/usr/bin/ld: cannot find -l*** with python setup.py build --mpicc=/dir/to/my/mpicc
Issue #61
closed
Hi, I was using openmpi and mpi4py to build my project. But when installing mpi4py, with
python setup.py build --mpicc=/dir/to/my/mpicc
I got the following error (And it seems the whole compilation passed?). Hope someone could help please.
running build
running build_src
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/mpi4py
copying src/mpi4py/__init__.py -> build/lib.linux-x86_64-2.7/mpi4py
copying src/mpi4py/__main__.py -> build/lib.linux-x86_64-2.7/mpi4py
copying src/mpi4py/bench.py -> build/lib.linux-x86_64-2.7/mpi4py
copying src/mpi4py/run.py -> build/lib.linux-x86_64-2.7/mpi4py
creating build/lib.linux-x86_64-2.7/mpi4py/futures
copying src/mpi4py/futures/__init__.py -> build/lib.linux-x86_64-2.7/mpi4py/futures
copying src/mpi4py/futures/__main__.py -> build/lib.linux-x86_64-2.7/mpi4py/futures
copying src/mpi4py/futures/_base.py -> build/lib.linux-x86_64-2.7/mpi4py/futures
copying src/mpi4py/futures/_spawn.py -> build/lib.linux-x86_64-2.7/mpi4py/futures
copying src/mpi4py/futures/_worker.py -> build/lib.linux-x86_64-2.7/mpi4py/futures
copying src/mpi4py/futures/pool.py -> build/lib.linux-x86_64-2.7/mpi4py/futures
copying src/mpi4py/MPI.pxd -> build/lib.linux-x86_64-2.7/mpi4py
copying src/mpi4py/__init__.pxd -> build/lib.linux-x86_64-2.7/mpi4py
copying src/mpi4py/libmpi.pxd -> build/lib.linux-x86_64-2.7/mpi4py
creating build/lib.linux-x86_64-2.7/mpi4py/include
creating build/lib.linux-x86_64-2.7/mpi4py/include/mpi4py
copying src/mpi4py/include/mpi4py/mpi4py.h -> build/lib.linux-x86_64-2.7/mpi4py/include/mpi4py
copying src/mpi4py/include/mpi4py/mpi4py.MPI.h -> build/lib.linux-x86_64-2.7/mpi4py/include/mpi4py
copying src/mpi4py/include/mpi4py/mpi4py.MPI_api.h -> build/lib.linux-x86_64-2.7/mpi4py/include/mpi4py
copying src/mpi4py/include/mpi4py/mpi4py.i -> build/lib.linux-x86_64-2.7/mpi4py/include/mpi4py
copying src/mpi4py/include/mpi4py/mpi.pxi -> build/lib.linux-x86_64-2.7/mpi4py/include/mpi4py
running build_clib
MPI configuration: [mpi] from 'mpi.cfg'
MPI C compiler: /usr/local/bin/mpicc
checking for library 'lmpe' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -llmpe -o _configtest
## **/usr/bin/ld: cannot find -llmpe
collect2: error:ld return 1** ##
failure.
removing: _configtest.c _configtest.o
building 'mpe' dylib library
creating build/temp.linux-x86_64-2.7
creating build/temp.linux-x86_64-2.7/src
creating build/temp.linux-x86_64-2.7/src/lib-pmpi
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c src/lib-pmpi/mpe.c -o build/temp.linux-x86_64-2.7/src/lib-pmpi/mpe.o
creating build/lib.linux-x86_64-2.7/mpi4py/lib-pmpi
/usr/local/bin/mpicc -pthread -shared -L/search/odin/chengshanbo/anaconda2/lib -Wl,-rpath=/search/odin/chengshanbo/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/src/lib-pmpi/mpe.o -o build/lib.linux-x86_64-2.7/mpi4py/lib-pmpi/libmpe.so
checking for library 'vt-mpi' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -lvt-mpi -o _configtest
/usr/bin/ld: cannot find -lvt-mpi
collect2: error:ld return 1
failure.
removing: _configtest.c _configtest.o
checking for library 'vt.mpi' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -lvt.mpi -o _configtest
/usr/bin/ld: cannot find -lvt.mpi
collect2: error:ld return 1
failure.
removing: _configtest.c _configtest.o
building 'vt' dylib library
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c src/lib-pmpi/vt.c -o build/temp.linux-x86_64-2.7/src/lib-pmpi/vt.o
/usr/local/bin/mpicc -pthread -shared -L/search/odin/chengshanbo/anaconda2/lib -Wl,-rpath=/search/odin/chengshanbo/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/src/lib-pmpi/vt.o -o build/lib.linux-x86_64-2.7/mpi4py/lib-pmpi/libvt.so
checking for library 'vt-mpi' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -lvt-mpi -o _configtest
/usr/bin/ld: cannot find -lvt-mpi
collect2: error:ld return 1
failure.
removing: _configtest.c _configtest.o
checking for library 'vt.mpi' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -lvt.mpi -o _configtest
/usr/bin/ld: cannot find -lvt.mpi
collect2: error:ld return 1
failure.
removing: _configtest.c _configtest.o
building 'vt-mpi' dylib library
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c src/lib-pmpi/vt-mpi.c -o build/temp.linux-x86_64-2.7/src/lib-pmpi/vt-mpi.o
/usr/local/bin/mpicc -pthread -shared -L/search/odin/chengshanbo/anaconda2/lib -Wl,-rpath=/search/odin/chengshanbo/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/src/lib-pmpi/vt-mpi.o -o build/lib.linux-x86_64-2.7/mpi4py/lib-pmpi/libvt-mpi.so
checking for library 'vt-hyb' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -lvt-hyb -o _configtest
/usr/bin/ld: cannot find -lvt-hyb
collect2: error:ld return 1
failure.
removing: _configtest.c _configtest.o
checking for library 'vt.ompi' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -lvt.ompi -o _configtest
/usr/bin/ld: cannot find -lvt.ompi
collect2: error:ld return 1
failure.
removing: _configtest.c _configtest.o
building 'vt-hyb' dylib library
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -c src/lib-pmpi/vt-hyb.c -o build/temp.linux-x86_64-2.7/src/lib-pmpi/vt-hyb.o
/usr/local/bin/mpicc -pthread -shared -L/search/odin/chengshanbo/anaconda2/lib -Wl,-rpath=/search/odin/chengshanbo/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/src/lib-pmpi/vt-hyb.o -o build/lib.linux-x86_64-2.7/mpi4py/lib-pmpi/libvt-hyb.so
running build_ext
MPI configuration: [mpi] from 'mpi.cfg'
MPI C compiler: /usr/local/bin/mpicc
checking for dlopen() availability ...
checking for header 'dlfcn.h' ...
/usr/local/gcc-4.9.2/bin/gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
success!
removing: _configtest.c _configtest.o
success!
checking for library 'dl' ...
/usr/local/gcc-4.9.2/bin/gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/gcc-4.9.2/bin/gcc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -ldl -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking for function 'dlopen' ...
/usr/local/gcc-4.9.2/bin/gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/gcc-4.9.2/bin/gcc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -ldl -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
building 'mpi4py.dl' extension
/usr/local/gcc-4.9.2/bin/gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DHAVE_DLFCN_H=1 -DHAVE_DLOPEN=1 -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c src/dynload.c -o build/temp.linux-x86_64-2.7/src/dynload.o
gcc -pthread -shared -L/search/odin/chengshanbo/anaconda2/lib -Wl,-rpath=/search/odin/chengshanbo/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/src/dynload.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -ldl -lpython2.7 -o build/lib.linux-x86_64-2.7/mpi4py/dl.so
checking for MPI compile and link ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
success!
removing: _configtest.c _configtest.o
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking for missing MPI functions/symbols ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
success!
removing: _configtest.c _configtest.o
checking for function 'MPI_Type_create_f90_integer' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking for function 'MPI_Type_create_f90_real' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking for function 'MPI_Type_create_f90_complex' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking for function 'MPI_Status_c2f' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking for function 'MPI_Status_f2c' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking for dlopen() availability ...
checking for header 'dlfcn.h' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
success!
removing: _configtest.c _configtest.o
success!
checking for library 'dl' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -ldl -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
checking for function 'dlopen' ...
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c _configtest.c -o _configtest.o
/usr/local/bin/mpicc _configtest.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -ldl -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
building 'mpi4py.MPI' extension
/usr/local/bin/mpicc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DHAVE_DLFCN_H=1 -DHAVE_DLOPEN=1 -I/search/odin/chengshanbo/anaconda2/include/python2.7 -c src/MPI.c -o build/temp.linux-x86_64-2.7/src/MPI.o
/usr/local/bin/mpicc -pthread -shared -L/search/odin/chengshanbo/anaconda2/lib -Wl,-rpath=/search/odin/chengshanbo/anaconda2/lib,--no-as-needed build/temp.linux-x86_64-2.7/src/MPI.o -L/search/odin/chengshanbo/anaconda2/lib -Lbuild/temp.linux-x86_64-2.7 -Wl,-R/search/odin/chengshanbo/anaconda2/lib -ldl -lpython2.7 -o build/lib.linux-x86_64-2.7/mpi4py/MPI.so
writing build/lib.linux-x86_64-2.7/mpi4py/mpi.cfg
Comments (4)
-
-
- changed status to closed
-
Thank you for the quick reply! So it won't affect the usage of mpi4py at all?
-
No, it will not. The really important extention module is
mpi4py.MPI
, and the build looks OK. - Log in to comment
The messages come from configure tests related to optional, non-essential components (MPE and VampirTrace for MPI profiling) that you do not have. As these components are optional, the build continues and eventually succeeds. Just go ahead and
python setup.py install
the beast.