[R] trouble installing SparseM

Prof Brian Ripley ripley at stats.ox.ac.uk
Wed Apr 25 09:52:34 CEST 2012


On 25/04/2012 08:05, Uwe Ligges wrote:
>
>
> On 25.04.2012 08:21, Erin Hodgess wrote:
>> Dear R People:
>>
>> I am attempting to install SparseM on R 2.15.0 on a Linux 11.10 system.
>>
>> Here is the output
>>> install.packages("SparseM",depen=TRUE)
>> Installing package(s) into
>> ‘/home/erin/R/x86_64-pc-linux-gnu-library/2.15’
>> (as ‘lib’ is unspecified)
>> --- Please select a CRAN mirror for use in this session ---
>> Loading Tcl/Tk interface ... done
>> trying URL 'http://cran.at.r-project.org/src/contrib/SparseM_0.96.tar.gz'
>> Content type 'application/x-gzip' length 749740 bytes (732 Kb)
>> opened URL
>> ==================================================
>> downloaded 732 Kb
>>
>> * installing *source* package ‘SparseM’ ...
>> ** package ‘SparseM’ successfully unpacked and MD5 sums checked
>> ** libs
>> gfortran -fpic -O3 -pipe -g -c bckslv.f -o bckslv.o
>> gfortran -fpic -O3 -pipe -g -c chol.f -o chol.o
>> gfortran -fpic -O3 -pipe -g -c chol2csr.f -o chol2csr.o
>> gfortran -fpic -O3 -pipe -g -c cholesky.f -o cholesky.o
>> gfortran -fpic -O3 -pipe -g -c csr.f -o csr.o
>> gfortran -fpic -O3 -pipe -g -c extract.f -o extract.o
>> gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -fpic -O3 -pipe
>> -g -c iohb.c -o iohb.o
>> iohb.c: In function ‘readHB_info’:
>> iohb.c:267: warning: cast from pointer to integer of different size
>> iohb.c: In function ‘readHB_header’:
>> iohb.c:309: warning: cast from pointer to integer of different size
>> iohb.c:310: warning: cast from pointer to integer of different size
>> iohb.c:328: warning: cast from pointer to integer of different size
>> iohb.c:346: warning: cast from pointer to integer of different size
>> iohb.c:347: warning: cast from pointer to integer of different size
>> iohb.c:348: warning: cast from pointer to integer of different size
>> iohb.c:349: warning: cast from pointer to integer of different size
>> iohb.c:362: warning: cast from pointer to integer of different size
>> iohb.c:305: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:313: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:323: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:336: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:354: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c: In function ‘readHB_mat_double’:
>> iohb.c:423: warning: cast from pointer to integer of different size
>> iohb.c:446: warning: cast from pointer to integer of different size
>> iohb.c:474: warning: cast from pointer to integer of different size
>> iohb.c:427: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:450: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:478: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c: In function ‘readHB_aux_double’:
>> iohb.c:660: warning: cast from pointer to integer of different size
>> iohb.c:627: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:638: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:645: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:665: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:693: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c: In function ‘readHB_mat_char’:
>> iohb.c:975: warning: cast from pointer to integer of different size
>> iohb.c:998: warning: cast from pointer to integer of different size
>> iohb.c:1026: warning: cast from pointer to integer of different size
>> iohb.c:979: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:1002: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:1030: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c: In function ‘readHB_aux_char’:
>> iohb.c:1192: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:1203: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:1213: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:1231: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c:1262: warning: ignoring return value of ‘fgets’, declared with
>> attribute warn_unused_result
>> iohb.c: In function ‘ParseRfmt’:
>> iohb.c:1537: warning: cast from pointer to integer of different size
>> iohb.c:1547: warning: cast from pointer to integer of different size
>> iohb.c:1551: warning: cast from pointer to integer of different size
>> iohb.c: In function ‘substr’:
>> iohb.c:1585: warning: cast from pointer to integer of different size
>> gcc -std=gnu99 -I/usr/share/R/include -DNDEBUG -fpic -O3 -pipe
>> -g -c readwrite.c -o readwrite.o
>> readwrite.c: In function ‘read_HB1’:
>> readwrite.c:33: warning: cast from pointer to integer of different size
>> gfortran -fpic -O3 -pipe -g -c sparskit.f -o sparskit.o
>> gfortran -fpic -O3 -pipe -g -c subscr.f -o subscr.o
>> gcc -std=gnu99 -shared -o SparseM.so bckslv.o chol.o chol2csr.o
>> cholesky.o csr.o extract.o iohb.o readwrite.o sparskit.o subscr.o
>> -lgfortran -lm -lquadmath -L/usr/lib/R/lib -lR
>> /usr/bin/ld: cannot find -lgfortran
>> /usr/bin/ld: cannot find -lquadmath
>> collect2: ld returned 1 exit status
>> make: *** [SparseM.so] Error 1
>> ERROR: compilation failed for package ‘SparseM’
>> * removing ‘/home/erin/R/x86_64-pc-linux-gnu-library/2.15/SparseM’
>>
>> The downloaded source packages are in
>> ‘/tmp/RtmprWTQJN/downloaded_packages’
>> Warning message:
>> In install.packages("SparseM", depen = TRUE) :
>> installation of package ‘SparseM’ had non-zero exit status
>>>
>>
>> It can't seem to find -lgfortran. However, the gfortran exists.
>
>
> I doubt the libraries are in one of the standard location that are
> looked up.

This is one of those Linux packaging dogmas that keep on catching out 
people.

For run-time use, there is /usr/lib64/libgfortran.so.3 (and perhaps 
other versions): for linking you need libgfortran.so .

I am presuming this is an *Ubuntu* 11.10 system (that is not a Linux 
number).  On that system, the runtime libs are in libgfortran3, and 
libgfortran.so is in gfortran-4.6-multilib.

I suggest you follow the advice of the R manuals and install r-base-dev, 
which will pull in all the pieces you need to build R or most packages.


>
> Best,
> Uwe
>
>
>
>> Any suggestions would be most welcome.
>>
>> thanks in advance,
>> Sincerely,
>> Erin
>>
>>
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.


-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



More information about the R-help mailing list