l1_logreg,you need to download the package
l1_logreg-<version>.tar.gzand 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_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.
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).
The most important option for
--with-blas-dir. This option can be used to specify the directory where BLAS library is installed. For example,
--with-lapack-diras 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.so is installed at
./configure --with-blas="-L/home/mylib -lmyblas"Note that
-Lis used in front of the BLAS directory and
-lis used in front of the BLAS library name.
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"
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:
Finally, you can build binaries using static linking with: