compiler error

Use of Cobaya. camb, CLASS, cosmomc, compilers, etc.
Post Reply
Florian Beutler
Posts: 8
Joined: January 18 2010
Affiliation: student

compiler error

Post by Florian Beutler » June 05 2013

Hi
I get a compiler error when compiling cosmomc

mpif90 -mkl -openmp -O3 -xHost -no-prec-div -fpp -DMPI -I../camb -DNOWMAP -c calclike.f90
mpif90 -mkl -openmp -O3 -xHost -no-prec-div -fpp -DMPI -I../camb -DNOWMAP -c EstCovmat.f90
mpif90 -mkl -openmp -O3 -xHost -no-prec-div -fpp -DMPI -I../camb -DNOWMAP -c PowellConstrainedMinimize.f90
mpif90 -mkl -openmp -O3 -xHost -no-prec-div -fpp -DMPI -I../camb -DNOWMAP -c minimize.f90
mpif90 -mkl -openmp -O3 -xHost -no-prec-div -fpp -DMPI -I../camb -DNOWMAP -c postprocess.f90
mpif90 -mkl -openmp -O3 -xHost -no-prec-div -fpp -DMPI -I../camb -DNOWMAP -c MCMC.f90
mpif90 -mkl -openmp -O3 -xHost -no-prec-div -fpp -DMPI -I../camb -DNOWMAP -c driver.F90
mpif90 -o ../cosmomc ObjectLists.o ParamNames.o Matrix_utils.o settings.o samples.o IO.o GeneralTypes.o cmbtypes.o Planck_like.o likelihood.o bbn.o lrggettheory.o bao.o supernovae_Union2.o supernovae_SNLS.o supernovae.o HST.o SDSSLy-a-v3.o CMB_Cls_simple.o cmbdata.o propose.o paramdef.o params_CMB.o DataLikelihoods.o calclike.o EstCovmat.o PowellConstrainedMinimize.o minimize.o postprocess.o MCMC.o driver.o -L../camb -lcamb_recfast -lmpi -L/usr/lib -mkl -openmp -O3 -xHost -no-prec-div -fpp -DMPI -I../camb -DNOWMAP
ld: library not found for -lmpi
make: *** [cosmomc] Error 1

it seems that this is not a problem with cosmomc, since the mpif90 compiler does not seem to find -lmpi in general

bash-3.2$ mpif90 -lmpi
ld: library not found for -lmpi

so this is more an openMPI question than a cosmomc question...
I compiled the openmpi package with the following configure command

./configure FC=ifort MPIFC=mpif90 --prefix=/usr/local/openmpi 2>&1 | tee c.txt

and the installation works without any problems

I added the following paths to my .bashrc file

PATH=/usr/local/openmpi/bin:$PATH ; export PATH
LD_LIBRARY_PATH=/usr/local/openmpi/lib:$LD_LIBRARY_PATH ; export LD_LIBRARY_PATH
DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH ; export DYLD_LIBRARY_PATH

I have no idea why it can't find -lmpi
any suggestions are highly appreciated

I am working on Mac OS 10.8.2

thanks
florian

Florian Beutler
Posts: 8
Joined: January 18 2010
Affiliation: student

compiler error

Post by Florian Beutler » June 07 2013

I switched from mpich to openmpi and the problem went away...

Post Reply