This page is intended for programmers and advanced users who wish to review or modify the NAADSM/SC source code, or to build the application from source code.
Current NAADSM source code
Source code for NAADSM is now available via the NAADSM Subversion repository at SourceForge.net. For instructions on accessing the Subversion repository, please see the Subversion documentation provided by SourceForge.net. Additional information for developers will be provided as it becomes available.
Source code for older versions of NAADSM
An archive of source code packages for older versions of NAADSM is available here.
Compiling and using NAADSM/SC
NAADSM/SC is a command line application. The interface consists solely of a set of command line options, which specify the names of files which contain the scenario parameters. NAADSM/SC parameter input files are created in plain-text extensible markup language (*.xml) format. Complete document type definitions (DTDs) are included with the NAADSM/SC source code. NAADSM/PC can be used to automatically generate the required XML.
The source code for NAADSM/SC is written in C. Exactly the same source code is used to generate the core model library used in NAADSM/PC with only a few simple changes to the compiler settings. NAASDM/SC can be compiled with the GNU Compiler Collection (GCC), version 3.4.2 or higher.
Additional notes and comments about NAADSM/SC installation and operation will be published as time allows. In the mean time, please contact one of the developers for assistance.
Required libraries for NAADSM/SC
A number of libraries are required in order to build NAADSM/SC. Many of these are included in typical Linux/UNIX distributions, but some will need to be compiled and installed prior to attempting to compile NAADSM/SC. As usual, these libraries may have additional dependencies of their own. The required libraries are as follows:
- The GNU Scientific Library version 1.8 or higher. Available from http://www.gnu.org/software/gsl.
- Popt version 1.7 or higher. Available from http://freshmeat.net/projects/popt.
- GLib version 2.22.2 or higher. Available from http://www.gtk.org.
- Expat version 1.95.8 or higher. Available from http://sourceforge.net/projects/expat.
- SCEW version 0.4.0 or higher. Source code is available from http://www.nongnu.org/scew. Modified source code is available from http://www.naadsm.org/opensource/scew.
- SPRNG version 2.0 or higher. Original source code (which does not compile on some Linux distributions) is available from http://sprng.cs.fsu.edu. Modified source code may be downloaded from http://www.naadsm.org/opensource/sprng.
- RTree. Original source code is available from http://www.superliminal.com/sources/sources.htm. Modified source code for NAADSM is available from http://www.naadsm.org/opensource/rtree.
- GPC version 2.32. Original source code is available from http://www.cs.man.ac.uk/~toby/alan/software. Modified source code for NAADSM is available from http://www.naadsm.org/opensource/gpc.
- PROJ.4 Cartographic Projections Library version 4.6.1 or higher. Available from http://trac.osgeo.org/proj/.
- GD Graphics Library version 2.0.33. Available from http://www.boutell.com/gd.
- Shapefile C Library version 1.2. Available from http://shapelib.maptools.org.