On 8 December 2008 at 06:22, Dirk Eddelbuettel wrote:
| | gcc -std=gnu99 -I/usr/share/R/include -fpic -g -O2 -c
mboost.c -o mboost.o
| | gcc -std=gnu99 -shared -o mboost.so mboost.o -lf77blas -latlas -
lgfortran -lm
| | -L/usr/lib/R/lib -lR
| | /usr/bin/ld: cannot find -lf77blas
| | collect2: ld returned 1 exit status
| | make: *** [mboost.so] Error 1
| | ERROR: compilation failed for package 'mboost'
| |
| | I guess this has something to do with the removal of the g77
package from Ubuntu
| | 8.10. Is there anything I can do short of compiling g77 and/or R
myself?
|
| It is not g77 itself (which was replaced by the improved
gfortran), it
| appears to be a Fortran-built BLAS library for linear algebra.
|
| As I have no issue building these package, let's see where this
library comes from:
|
| edd at joe:~$ locate libf77blas.so
| /usr/lib/libf77blas.so
| /usr/lib/libf77blas.so.3gf
| /usr/lib/libf77blas.so.3gf.0
|
| and hence
|
| edd at joe:~$ dpkg -S /usr/lib/libf77blas.so
| libatlas-base-dev: /usr/lib/libf77blas.so
|
| So 'sudo apt-get install libatlas-base-dev' should fix it for you.
Something may change in the build process. R wants this 'f77blas'
library
as it was encoded at configure time for R itself. My Debian testing
box has
edd at ron:~$ grep blas /etc/R/Makeconf
BLAS_LIBS = -lblas
edd at ron:~$
which is correct: 'blas' is library that can be provide by atlas
(fast, big
package) or refblas (smaller). My Ubuntu system (using our CRAN
binaries for
R) has
edd at joe:~$ grep blas /etc/R/Makeconf
BLAS_LIBS = -lf77blas -latlas
edd at ron:~$
which is what you have, and which may have gotten there by accident.