Build your own

To install l1_logreg, you need to download the package l1_logreg-<version>.tar.gz and untar it.
    tar -xzvf l1_logreg-<version>.tar.gz
    cd l1_logreg-<version>

The normal way to proceed after untarring the source package is:

    ./configure
    make
    make check
    make install

This will build the three binary files l1_logreg_train, l1_logreg_classify and l1_logreg_regpath at the src_c directory, and check whether the solver is working correctly, and then install (copy) the files to an installation directory. If you come across problems during compilation or configuration, you may want to run make distclean before trying again.

The configure script tries to find out (or guess) all the information which is necessary for build process, but it may not always work. In this case, you may change configurations by specifying options. For example, --prefix will install the software into the home directory of the user instead of the default location (/usr or /usr/local).

    ./configure --prefix=/home/user

The most important option for l1_logreg is --with-blas-dir. This option can be used to specify the directory where BLAS library is installed. For example,

    ./configure --with-blas-dir="/usr/sweet/apps/sunstudio-10/lib"
will look for a BLAS library in the specified directory. You may use --with-lapack-dir as well if BLAS and LAPACK are installed in different directories:
    ./configure --with-blas-dir="/home/path_for_blas" --with-lapack-dir="/home/path_for_lapack"

To specify a library name as well, you may want to use --with-blas option. For example, if BLAS library, libmyblas.a or libmyblas.so is installed at /home/mylib

    ./configure --with-blas="-L/home/mylib -lmyblas"
Note that -L is used in front of the BLAS directory and -l is used in front of the BLAS library name.

The configure script tries to choose a good compiler and optimization option compatible with your platform. However, you may use some other compiler (and/or other options for C compiler), for example :

    ./configure CC="gcc32" CFLAGS="-o3 -funroll-loops"

The configure script uses Fortran compiler by default. l1_logreg is written in C, but most BLAS/LAPACK libraries are in Fortran. The calling conventions of Fortran routines from C are different platform by platform. The most widly used convention is using lowercase routine name with underscore (subroutine FOO in Fortran becomes foo_ in C, but foo, Foo, foo__, _foo in some other platforms). However, some Fortran compiler may cause trouble in building process. In this case, you may also want to disable Fortran compiler with:

    ./configure --with-fortran=no

Finally, you can build binaries using static linking with:

    ./configure --with-static-linking=yes

Generated on Mon May 25 19:15:19 2009 for l1_logreg by Doxygen 1.5.5