Dear Dirk,

many thanks for your reply, please see below,


On 13 October 2008 at 11:22, Simone Giannerini wrote:
| Dear all,
|
| I have troubles installing rmpi 0.5-5 (or 0.5-6) on a quad opteron machine

| with OpenSUSE 11.0 and
| R 2.7.2
|
| platform x86_64-unknown-linux-gnu
| arch x86_64
| os linux-gnu
| system x86_64, linux-gnu
| status Patched
| major 2
| minor 7.2
| year 2008
| month 09
| day 18
| svn rev 46546
| language R
| version.string R version 2.7.2 Patched (2008-09-18 r46546)
|
| I tried the following
|
| # export MPI_ROOT=/usr/lib64/mpi/gcc/openmpi/
|
| # R CMD INSTALL Rmpi_0.5-6.tar.gz

Where did you get 0.5-6 from? The newest, per the author's website, is
0.5-5.

http://www.stats.uwo.ca/faculty/yu/Rmpi/download/dev


| * Installing to library '/usr/local/lib64/R/library'
| * Installing *source* package 'Rmpi' ...
| checking for gcc... gcc
| checking for C compiler default output file name... a.out
| checking whether the C compiler works... yes
| checking whether we are cross compiling... no
| checking for suffix of executables...
| checking for suffix of object files... o
| checking whether we are using the GNU C compiler... yes
| checking whether gcc accepts -g... yes
| checking for gcc option to accept ISO C89... none needed
| Try to find mpi.h ...
| Found in /usr/lib64/mpi/gcc/openmpi//include
| Try to find libmpi.so or libmpich.a
| checking for main in -lmpi... yes

At this point you have mpi.h and libmpi. Looks good.

| checking for openpty in -lutil... yes
| checking for main in -lpthread... yes
| configure: creating ./config.status
| config.status: creating src/Makevars
| ** libs
| gcc -std=gnu99 -I/usr/local/lib64/R/include -DPACKAGE_NAME=\"\"
| -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
| -DPACKAGE_BUGREPORT=\"\" -I/usr/lib64/mpi/gcc/openmpi//include -DMPI2
| -DOPENMPI -fPIC -I/usr/local/include -fpic -g -O2 -c RegQuery.c -o
| RegQuery.o
| gcc -std=gnu99 -I/usr/local/lib64/R/include -DPACKAGE_NAME=\"\"
| -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
| -DPACKAGE_BUGREPORT=\"\" -I/usr/lib64/mpi/gcc/openmpi//include -DMPI2
| -DOPENMPI -fPIC -I/usr/local/include -fpic -g -O2 -c Rmpi.c -o Rmpi.o
| gcc -std=gnu99 -I/usr/local/lib64/R/include -DPACKAGE_NAME=\"\"
| -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
| -DPACKAGE_BUGREPORT=\"\" -I/usr/lib64/mpi/gcc/openmpi//include -DMPI2
| -DOPENMPI -fPIC -I/usr/local/include -fpic -g -O2 -c conversion.c -o
| conversion.o
| gcc -std=gnu99 -I/usr/local/lib64/R/include -DPACKAGE_NAME=\"\"
| -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\"
| -DPACKAGE_BUGREPORT=\"\" -I/usr/lib64/mpi/gcc/openmpi//include -DMPI2
| -DOPENMPI -fPIC -I/usr/local/include -fpic -g -O2 -c internal.c -o
| internal.o

It all compiles, thanks to mpi.h.

| gcc -std=gnu99 -shared -L/usr/local/lib64 -o Rmpi.so RegQuery.o Rmpi.o
| conversion.o internal.o -L/usr/lib64/mpi/gcc/openmpi//lib -lmpi -lutil
| -lpthread -fPIC
| /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld:

| cannot find -lmpi
| 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'

This seems to indicate that your installation of Open MPI conflicts with
your
setting of
        export MPI_ROOT=/usr/lib64/mpi/gcc/openmpi/
as this directory is expected to contain include/ and lib/

I am not sure I got this,  Open MPI is installed in
/usr/lib64/mpi/gcc/openmpi/ and such directory contains both include and lib
folders:

gauss:/usr/lib64/mpi/gcc/openmpi # ls -R
bin  include  lib64  share

./bin:
mpiCC   mpicc   mpiexec  mpif90  mpivars.csh  ompi_info     opalc++
ortec++  orted
mpic++  mpicxx  mpif77   mpirun  mpivars.sh   opal_wrapper  opalcc
ortecc   orterun

./include:
mpi.h  mpif-common.h  mpif-config.h  mpif.h  openmpi

./include/openmpi:
ompi           opal           opal_config_bottom.h  orte
ompi_config.h  opal_config.h  opal_stdint.h         orte_config.h

[...]

./lib64:
libmca_common_sm.la        libmpi_cxx.la        libmpi_f90.la
libopen-rte.la
libmca_common_sm.so        libmpi_cxx.so        libmpi_f90.so
libopen-rte.so
libmca_common_sm.so.0      libmpi_cxx.so.0      libmpi_f90.so.0
libopen-rte.so.0
libmca_common_sm.so.0.0.0  libmpi_cxx.so.0.0.0  libmpi_f90.so.0.0.0
libopen-rte.so.0.0.0
libmpi.la                  libmpi_f77.la        libopen-pal.la
mpi.mod
libmpi.so                  libmpi_f77.so        libopen-pal.so
openmpi
libmpi.so.0                libmpi_f77.so.0      libopen-pal.so.0
libmpi.so.0.0.0            libmpi_f77.so.0.0.0  libopen-pal.so.0.0.0

| I also tried with
|
| R CMD INSTALL Rmpi_0.5-6.tar.gz
| --configure-args=--with-mpi=/usr/lib64/mpi/gcc/openmpi/
|
| with the same results.
| Any help would be greatly appreciated.
I'd recommend having a look at configure.ac, which is pretty
straightforward,
and 'helping' it with the locations you have. I had to do the same for
Debian's Rmpi due to use also having mpich and lam.

Please, could you be more explicit? Thanks, I tried to modify line 8 of the
file configure.ac without success. BTW I had also LAM and mpich installed
but I removed them.

Thank you for your help,

Kind regards

Simone

Reply via email to