:: index:: Configure, Reconfigure, XMDS2 runtime options

# Configuration, installation and runtime options¶

Running the ‘xmds2’ program with the option ‘–help’, gives several options that can change its behaviour at runtime. These include:
• ‘-o’ or ‘–output’, which overrides the name of the output file to be generated
• ‘-n’ or ‘–no-compile’, which generates the C code for the simulation, but does not try to compile it
• ‘-v’ or ‘–verbose’, which gives verbose output about compilation flags.
• ‘-g’ or ‘–debug’, which compiles the simulation in debug mode (compilation errors refer to lines in the source, not the .xmds file). This option implies ‘-v’. This option is mostly useful when debugging XMDS code generation.
• ‘–waf-verbose’, which makes waf be very verbose when configuring XMDS or compiling simulations. This option is intended for developer use only to aid in diagnosing problems with waf.

It also has commands to configure XMDS2 and recheck the installation. If your program requires extra paths to compile, you can configure XMDS2 to include those paths by default. Simply use the command

$xmds2 --configure --include-path /path/to/include --lib-path /path/to/lib  Alternatively, you can set the CXXFLAGS or LINKFLAGS environment variables before calling xmds2 --reconfigure. For example, to pass the compiler flag -pedantic and the link flag -lm using the bash shell, use: $ export CXXFLAGS="-pedantic"
$export LINKFLAGS="-lm"$ xmds2 --reconfigure


This method can also be used to change the default compilers for standard and parallel processing, using the CXX and MPICXX flags respectively.

Running XMDS2 with the ‘–configure’ option also searches for packages that have been installed since you last installed or configured XMDS2. If you wish to run ‘xmds2 –configure’ with the same extra options as last time, simply use the command:

\$ xmds2 --reconfigure


A detailed log of the checks is saved in the file ‘~/.xmds/waf_configure/config.log’. This can be used to identify issues with packages that XMDS2 is not recognised, but you think that you have successfully installed on your system.