Dear ALPS users/developers,
After ccmake, I am trying to make the ALPS 2.2b1. The process ends at
Linking CXX executable jacobidavidson2 /opt/intel/composer_xe_2013_sp1.2.144/mkl/lib/intel64/libmkl_core.so: undefined reference to `pthread_mutex_trylock' collect2: error: ld returned 1 exit status make[2]: *** [example/ietl/jacobidavidson2] Error 1 make[1]: *** [example/ietl/CMakeFiles/jacobidavidson2.dir/all] Error 2 make: *** [all] Error 2
Is it because some incompatibility of mkl library and Ubuntu's library? or I made some mistake when I generate the make file. I got stuck by this problem for days, any suggestion is welcome. Thanks.
Best, Yi-Ping
My cmake configuration is like: -- Compiler version: c++ (Ubuntu 4.8.1-2ubuntu1~12.04) 4.8.1 -- Build type: Release -- Python interpreter /usr/bin/python -- Python interpreter ok : version 2.7.3 -- PYTHON_INCLUDE_DIRS = /usr/include/python2.7 -- PYTHON_NUMPY_INCLUDE_DIR = /usr/lib/python2.7/dist-packages/numpy/core/include -- PYTHON_SITE_PKG = /usr/lib/python2.7/dist-packages -- PYTHON_LIBRARY = /usr/lib/python2.7/config/libpython2.7.so -- PYTHON_EXTRA_LIBS =-lssl -lcrypto -lssl -lcrypto -L/usr/lib -lz -lpthread -ldl -lutil -- PYTHON_LINK_FOR_SHARED = -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions -- ALPS version: 2.2.b1 -- Looking for precompiled Boost libraries (version >= 1.48) -- Adding Boost dir: /usr/include -- MPI compiler was /usr/bin/mpicxx -- LAPACK DEBUG::Compiler id GNU -- LAPACK DEBUG::Compiler version -- LAPACK DEBUG::Processor x86_64 -- LAPACK DEBUG::ENV{MKL} -- LAPACK DEBUG::ENV{MKLROOT} /opt/intel/composer_xe_2013_sp1.2.144/mkl -- LAPACK DEBUG::ENV{MKL_HOME} -- LAPACK DEBUG::MKL_VERSION (raw) 1.2.144 -- LAPACK DEBUG::MKL_VERSION 10.3.1 -- Found intel/mkl library -- LAPACK DEBUG::LAPACK_LIBRARY = -L/opt/intel/composer_xe_2013_sp1.2.144/mkl/lib/intel64;-lmkl_intel_lp64;-lmkl_sequential;-lmkl_core;-lpthread;-lm -- SQLite Library: not found -- LPSolve Library: not found -- HDF5: /usr/include debug;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so;optimized;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND -- Python interpreter /usr/bin/python -- Python interpreter ok : version 2.7.3 -- PYTHON_INCLUDE_DIRS = /usr/include/python2.7 -- PYTHON_NUMPY_INCLUDE_DIR = /usr/lib/python2.7/dist-packages/numpy/core/include -- PYTHON_SITE_PKG = /usr/lib/python2.7/dist-packages -- PYTHON_LIBRARY = /usr/lib/python2.7/config/libpython2.7.so -- PYTHON_EXTRA_LIBS =-lssl -lcrypto -lssl -lcrypto -L/usr/lib -lz -lpthread -ldl -lutil -- PYTHON_LINK_FOR_SHARED = -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions -- Numpy include in /usr/lib/python2.7/dist-packages/numpy/core/include -- ALPS XML dir is /home/yi-ping/ALPS/ALPS2.2/lib/xml -- HDF5: /usr/include debug;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so;optimized;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND;HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND -- HDF5: /usr/include debug;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so;optimized;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND;HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND -- tebd will not be built -- HDF5: /usr/include debug;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so;optimized;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND;HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND -- Configuring done -- Generating done -- Build files have been written to: /home/yi-ping/ALPS/ALPS2.2/alps-2.2.b1-r7195-src-with-boost/build
Hi,
Your problem seems to be known to Intel but is no real fix at the moment, just a workaround. Full description here: https://software.intel.com/en-us/articles/symbol-lookup-error-when-linking-i...
The solution is to add the —no-as-needed linker flag.
In ALPS you can customize the MKL linking throughout the MKL environment variable. Before the cmake configuration set the following: export MKL="-L$MKLROOT/lib/intel64 -Wl,--no-as-needed -lmkl_intel_lp64 -lmkl_core -lmkl_sequential -lpthread -lm"
Best regards, Michele
-- ETH Zurich Michele Dolfi Institute for Theoretical Physics HIT G 32.4 Wolfgang-Pauli-Str. 27 8093 Zurich Switzerland
dolfim@phys.ethz.ch www.itp.phys.ethz.ch
+41 44 633 78 56 phone +41 44 633 11 15 fax
On Apr 16, 2014, at 9:47 AM, Yi-Ping Huang Yiping.Huang@Colorado.EDU wrote:
Dear ALPS users/developers,
After ccmake, I am trying to make the ALPS 2.2b1. The process ends at
Linking CXX executable jacobidavidson2 /opt/intel/composer_xe_2013_sp1.2.144/mkl/lib/intel64/libmkl_core.so: undefined reference to `pthread_mutex_trylock' collect2: error: ld returned 1 exit status make[2]: *** [example/ietl/jacobidavidson2] Error 1 make[1]: *** [example/ietl/CMakeFiles/jacobidavidson2.dir/all] Error 2 make: *** [all] Error 2
Is it because some incompatibility of mkl library and Ubuntu's library? or I made some mistake when I generate the make file. I got stuck by this problem for days, any suggestion is welcome. Thanks.
Best, Yi-Ping
My cmake configuration is like: -- Compiler version: c++ (Ubuntu 4.8.1-2ubuntu1~12.04) 4.8.1 -- Build type: Release -- Python interpreter /usr/bin/python -- Python interpreter ok : version 2.7.3 -- PYTHON_INCLUDE_DIRS = /usr/include/python2.7 -- PYTHON_NUMPY_INCLUDE_DIR = /usr/lib/python2.7/dist-packages/numpy/core/include -- PYTHON_SITE_PKG = /usr/lib/python2.7/dist-packages -- PYTHON_LIBRARY = /usr/lib/python2.7/config/libpython2.7.so -- PYTHON_EXTRA_LIBS =-lssl -lcrypto -lssl -lcrypto -L/usr/lib -lz -lpthread -ldl -lutil -- PYTHON_LINK_FOR_SHARED = -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions -- ALPS version: 2.2.b1 -- Looking for precompiled Boost libraries (version >= 1.48) -- Adding Boost dir: /usr/include -- MPI compiler was /usr/bin/mpicxx -- LAPACK DEBUG::Compiler id GNU -- LAPACK DEBUG::Compiler version -- LAPACK DEBUG::Processor x86_64 -- LAPACK DEBUG::ENV{MKL} -- LAPACK DEBUG::ENV{MKLROOT} /opt/intel/composer_xe_2013_sp1.2.144/mkl -- LAPACK DEBUG::ENV{MKL_HOME} -- LAPACK DEBUG::MKL_VERSION (raw) 1.2.144 -- LAPACK DEBUG::MKL_VERSION 10.3.1 -- Found intel/mkl library -- LAPACK DEBUG::LAPACK_LIBRARY = -L/opt/intel/composer_xe_2013_sp1.2.144/mkl/lib/intel64;-lmkl_intel_lp64;-lmkl_sequential;-lmkl_core;-lpthread;-lm -- SQLite Library: not found -- LPSolve Library: not found -- HDF5: /usr/include debug;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so;optimized;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND -- Python interpreter /usr/bin/python -- Python interpreter ok : version 2.7.3 -- PYTHON_INCLUDE_DIRS = /usr/include/python2.7 -- PYTHON_NUMPY_INCLUDE_DIR = /usr/lib/python2.7/dist-packages/numpy/core/include -- PYTHON_SITE_PKG = /usr/lib/python2.7/dist-packages -- PYTHON_LIBRARY = /usr/lib/python2.7/config/libpython2.7.so -- PYTHON_EXTRA_LIBS =-lssl -lcrypto -lssl -lcrypto -L/usr/lib -lz -lpthread -ldl -lutil -- PYTHON_LINK_FOR_SHARED = -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions -- Numpy include in /usr/lib/python2.7/dist-packages/numpy/core/include -- ALPS XML dir is /home/yi-ping/ALPS/ALPS2.2/lib/xml -- HDF5: /usr/include debug;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so;optimized;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND;HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND -- HDF5: /usr/include debug;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so;optimized;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND;HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND -- tebd will not be built -- HDF5: /usr/include debug;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so;optimized;/usr/lib/libhdf5_hl.so;/usr/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libpthread.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libm.so HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND;HDF5_DLL-NOTFOUND;HDF5_HL_DLL-NOTFOUND -- Configuring done -- Generating done -- Build files have been written to: /home/yi-ping/ALPS/ALPS2.2/alps-2.2.b1-r7195-src-with-boost/build
comp-phys-alps-users@lists.phys.ethz.ch