NOTE: see bottom of this file for suggested configurations on particular ANL machines. 0 - Checkout, build, and install the trunk version of ROSS. At the time of release (0.3.0), ROSS's latest commit hash was c04babe, so this revision is "safe" in the unlikely case incompatible changes come along in the future. git clone http://github.com/carothersc/ROSS.git # optional: git checkout c04babe cd ROSS mkdir build cd build # note: other options for ARCH include i386 (for 32 bit machines), # bgp, and bgq (for Blue Gene systems) ARCH=x86_64 CC=mpicc CXX=mpicxx cmake -DCMAKE_INSTALL_PREFIX=../install ../ make -j 3 make install 1 - If you are building codes-base directly from the repository, run ./prepare.sh 2 - Configure codes-base. This can be done in the source directory or in a dedicated build directory if you prefer out-of-tree builds. The CC environment variable must refer to an MPI compiler. mkdir build cd build ../configure --with-ross=/path/to/ross/install --prefix=/path/to/codes-base/install CC=mpicc To enable network tracing with dumpi, use optional --with-dumpi = /path/to/dumpi/install with configure. 3 - Build and install codes-base make && make install 4 - (optional) run test programs make tests && make check 5 - codes-base uses flex and bison (or lex and yacc) to generate several parsers. These tools auto-generate C source files. To get around versioning issues, we've distributed the auto-generated sources directly. To remove all of the autogenerated files for these parsers, execute make maintainer-clean-local Machine-specific configurations: ---------------- - Fusion (ANL): add the following keys to your ~/.soft file and run "resoft" prior to following the steps described in this file: +python-2.7.3 +autoconf-2.68 +git +cmake Notes on using the clang static analyzer ----------------- - follow steps 0-2 as shown above, with one exception: - add the following argument to configure: CFLAGS=-I - edit Makefile, and delete the "CC = mpicc" (or similar) line - run "scan-build --use-cc=mpicc make"