Webnucleo.org

Mail Lists | Developers
small logo


Warning: This is no longer the latest available version of this module. Please see the releases page for the most recent version. The Webnucleo group strongly recommends the use of the latest version of any of its online modules.

This tutorial demonstrates how to compile the example codes of libnucnet. 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.

Check for Dependencies

The libnucnet codes depend on libxml2, the XML C parser and toolkit of Gnome, gsl, the GNU Scientific Library, and wn_matrix, Webnucleo's sparse matrix module. The examples also require xsltproc, which is part of libxslt, the XSLT C library for GNOME.

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 from the libxml2 downloads page before compiling libnucnet 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. As with libxml, 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 from the gsl ftp site before compiling libnucnet codes.

To find out if you have xsltproc properly installed on your system, type at the command line:

xsltproc  --version

If xsltproc is properly installed, the command will return the version number you have. If xsltproc is not properly installed, your system will indicate that the command is not found. In this case, you will need to install xsltproc from the libxslt download site.

To install wn_matrix, see the download and compile tutorials for the latest release of wn_matrix.

-top-

Create a Temporary Directory

After downloading libnucnet, go to the directory src/examples of the distribution. For example, if your current installation of libnucnet is in the directory ~/modules/libnucnet/0.1/src/, type

cd  ~/modules/libnucnet/0.1/src/examples

Create a temporary directory by typing

mkdir  tmp

This command makes a temporary directory named "tmp" where the object files will be created during compilation.

-top-

Compile the Examples

You will first need to edit the Makefile. Look for this part of the Makefile:

#///////////////////////////////////////////////////////////////////////////////
# The following lines must be edited according to where you have
# placed your libnucnet and wn_matrix modules, and your matrix solver code
# (in the current examples, ex_matrix.c and ex_matrix.h).  You may also
# edit to choose a different compiler (e.g., g++), whether to use Valgrind or
# not, or to profile:
#///////////////////////////////////////////////////////////////////////////////

GC=gcc

LIBNUCNETDIR = ../
MATRIXSRCDIR = ../../../../wn_matrix/0.7/src/
SOLVEDIR = ./
VALGRIND= yes
PROFILE= no

#///////////////////////////////////////////////////////////////////////////////
# End of lines to be edited.
#///////////////////////////////////////////////////////////////////////////////
  

You should only need to change the lines in this section. If you installed wn_matrix in the ~/modules/ as described in the wn_matrix download tutorial, you should not have to change anything. If you installed wn_matrix elsewhere, you might need to change at least the MATRIXSRCDIR to point to the directory in which you installed your version of wn_matrix. For example, if you installed version 0.7 of wn_matrix in /home/your_user_name/my_webnucleo_stuff/modules/wn_matrix/0.7, then you might need to change the MATRIXSRCDIR line to read

MATRIXSRCDIR   =   /home/your_user_name/my_webnucleo_stuff/modules/wn_matrix/0.7/src/

You might also want to change the compiler from gcc to g++ by setting GC=g++ or to optimize by setting VALGRIND=no. If you choose PROFILE= yes, the executable will leave a gmon.out file that you can view with gprof.

Note that we have set the compiler flags to check the executable with Valgrind. Valgrind works best without optimization, so you can optimize your executables by setting VALGRIND= no.

Now compile the examples by typing:

make  all

This will generate all the executable files, example1*, example2* .... You can also make them separately. For example, type

make  example1

to generate the executable file example1*.

-top-

Clean the Examples

To remove the object files created during compilation, type

make  clean

To remove all the object and executable files, type

make  cleanall

-top-



Valid XHTML 1.1        Copyright © 2001-2012, Clemson University. All rights reserved.        Valid CSS!
Page last modified on 2008/07/01 18:12