This tutorial demonstrates how to compile the example codes of wn_matrix. It assumes you are in a Linux or Unix environment. If you are using a different operating system, please adjust the following instructions as appropriate.
The wn_matrix codes depend on libxml2, the XML C parser and toolkit of Gnome, and gsl, the GNU Scientific Libaray.
To find out if you have libxml2 properly installed on your system, type at the command line:
xml2-config
If libxml2 is properly installed, the command will return a Usage description and a list of Options. Note that you can check which version of libxml2 is installed by typing
xml2-config --version
If libxml2 is not properly installed, the result of running xml2-config will be the line
xml2-config: command not found
In this case, you will need to install libxml2 by following the appropriate instructions from this blog post before compiling wn_matrix codes.
To find out if you have gsl properly installed on your system, type at the command line:
gsl-config
If gsl is properly installed, the command will return a Usage description and a list of Options. Note that you can check which version of gsl is installed by typing
gsl-config --version
If gsl is not properly installed, the result of running gsl-config will be the line
gsl-config: command not found
In this case, you will need to install gsl by following the appropriate instructions from this blog post before compiling wn_matrix codes.
After downloading wn_matrix, go to the directory examples/ of the distribution. For example, if your current installation of wn_matrix is in the directory ~/modules/wn_matrix/0.4/, type
cd ~/modules/wn_matrix/0.4/examples
Now compile the examples by typing
make all
This will generate all the executable files. You can also make them separately. For example, type
make create_matrix
to generate the executable file create_fermion. Please note that we have the compiler flags set for gcc and for memory checking with Valgrind. You may wish to edit the Makefile. Look for this part of the Makefile:
#=============================================================================== # Edit the following lines to give the path to the wn_matrix codes, to choose # the compiler (gcc or g++), and to choose whether you will check # executable with Valgrind: #=============================================================================== MATRIXSRCDIR = ../src/ GC=gcc VALGRIND=yes #=============================================================================== # End of editing #===============================================================================
You should only need to change the lines in this section. For example, you might want to change the compiler from gcc to g++ by setting GC=g++ or to optimize by setting VALGRIND=no. (Note that Valgrind works better without optimization.)
To remove the object files created during compilation, type
make clean
To remove all the object and executable files, type
make cleanall