From ripley at stats.ox.ac.uk  Mon Nov 29 14:38:26 2010
From: ripley at stats.ox.ac.uk (Prof Brian Ripley)
Date: Mon, 29 Nov 2010 13:38:26 +0000 (GMT)
Subject: [Rd] package matrix dummy.cpp
In-Reply-To: <AANLkTimvgLjYE0BqvvG-UO=k6pTuVnWuAVHZP3m4WaZm@mail.gmail.com>
References: <AANLkTikpt5e8X4RUj8Do8+CFnB6BNR59OgUzmgFCHpq8@mail.gmail.com>
	<alpine.LFD.2.00.1011281557540.17922@gannet.stats.ox.ac.uk>
	<19699.25149.665358.910225@lynne.math.ethz.ch>
	<AANLkTimvgLjYE0BqvvG-UO=k6pTuVnWuAVHZP3m4WaZm@mail.gmail.com>
Message-ID: <alpine.LFD.2.00.1011291330340.28978@toucan.stats.ox.ac.uk>

On Mon, 29 Nov 2010, Ambrus Kaposi wrote:

> Thank you for the help.
>
>> yes. ?Though, as Brian mentions below it's strange that you
>> can't compile the package (how?) with the file present.
>> I'd guess that this would mean you cannot (easily) install any
>> CRAN packages that use C++ ?
>> I think this will preclude you from using very fine R extensions!
>
> My g++ compiler can't handle the -lgfortran switch, while gcc can. I
> think it is the fault of my Linux distribution (http://nixos.org), but
> it was an easier solution to use gcc instead of g++ than fixing g++.
> This probably means that I can't compile any R packages using C++ and
> fortran at the same time. I will investigate further in this error.

Yes, there is no guarantee that you can mix any two languages except C 
and Fortran.

But this is not the way a Linux system is usually set up, and you may 
be able to resolve it by including the path to libgfortran in 
LD_LIBRARY_PATH, or editing FLIBS in R_HOME/etc/Makeconf to be 
something like

"-L /path/to/gfortran -rpath=/path/to/gfortran -lgfortran"

>
> This was the error:
> g++ -shared -L/usr/local/lib -o Matrix.so CHMfactor.o Csparse.o
> TMatrix_as.o Tsparse.o init.o Mutils.o chm_common.o cs.o cs_utils.o
> dense.o dgCMa
> trix.o dgTMatrix.o dgeMatrix.o dpoMatrix.o dppMatrix.o dsCMatrix.o
> dsyMatrix.o dspMatrix.o dtCMatrix.o dtTMatrix.o dtrMatrix.o
> dtpMatrix.o factor
> izations.o ldense.o lgCMatrix.o sparseQR.o abIndex.o CHOLMOD.a
> COLAMD.a AMD.a -L/tmp/nix-build-l8rd1zk5f2fslzm7w1zygwz376br9nlw-r-lang.drv-0/R-2.
> 12.0/lib -lRlapack
> -L/tmp/nix-build-l8rd1zk5f2fslzm7w1zygwz376br9nlw-r-lang.drv-0/R-2.12.0/lib
> -lRblas -lgfortran -lm
> /nix/store/bwwd0qz5ar7afhxdb26bjglql86hcw6b-binutils-2.20/bin/ld:
> cannot find -lgfortran
> collect2: ld returned 1 exit status
>
> Best regards,
> Ambrus Kaposi
>

-- 
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


[Rd] package matrix dummy.cpp
Prof Brian Ripley