On May 9, 2006, at 1:44 PM, Emiliano Barreto_Hernandez wrote:
> Ive tryed to install Rmpi that is an implemetation of mpi in R that
> use
> lam-mpi.
>
> I used the next command:
>
> R CMD INSTALL Rmpi_0.5-2.tar.gz
>
> But occurred this error:
>
> gcc -shared -L/usr/local/lib64 -o Rmpi.so conversion.o internal.o
> RegQuery.o
> Rmpi.o -lmpi -llam -lutil -lpthread -L/usr/local/lib64/R/lib -lR
> /usr/lib64/gcc-lib/x86_64-suse-linux/3.3.3/../../../../x86_64-suse-
> linux/bin
> /ld: /usr/local/lib/libmpi.a( infoset.o): relocation R_X86_64_32
> can not be
> used when making a shared object; recompile with -fPIC
> /usr/local/lib/libmpi.a: could not read symbols: Bad value
> collect2: ld returned 1 exit status
> make: *** [Rmpi.so ] Error 1
> chmod: cannot access `/usr/local/lib64/R/library/Rmpi/libs/*': No
> such file
> or directory
> ERROR: compilation failed for package 'Rmpi'
> ** Removing '/usr/local/lib64/R/library/Rmpi'
>
> It looks like I must recompile lim with -fPIC but I coudn't. May
> you give me
> some advice
This means you must recompile LAM/MPI with the -fPIC option. There
are two ways to do that. The simplest is to recompile LAM/MPI with
the options --enable-shared --disable-static. This will also
probably make it easier to use R with LAM/MPI, but you will have to
use LD_LIBRARY_PATH or rpath to make sure the LAM/MPI shared
libraries can be loaded.
The other option is to still compile LAM/MPI as a static library and
compile with the -fPIC option. This can be done by using a configure
line like:
./configure CFLAGS="-fPIC" CXXFLAGS="-fPIC" FFLAGS="-fPIC" <normal
options>
Hope this helps,
Brian
--
Brian Barrett
LAM/MPI developer and all around nice guy
Have a LAM/MPI day: http://www.lam-mpi.org/
|