Hi,
can you test your Boost libraries by writing a small Boost.MPI test program and trying to link it against those libraries.
Alternatively you can also have ALPS build Boost from source.
Matthias
On Dec 8, 2011, at 2:08 PM, Torquil Macdonald Sørensen wrote:
Hi!
I would like to build ALPS 2.0.2 on my Debian Linux system which has Boost++ 1.46 libraries installed. However, I get the build error shown below. I have attached CMakeCache.txt.
The cmake command was generated by the Debian build system applied to the old alps_2.0.0~rc4 Debian package (but with the updated 2.0.2 source of course) available at:
http://alps.comp-phys.org/static/software/debian/sid/
The cmake command was:
cmake /home/tmac/src/alps/alps-2.0.2-r5790-src/alps/. -DCMAKE_INSTALL_PREFIX="/usr" -DCMAKE_C_COMPILER:FILEPATH="cc" -DCMAKE_CXX_COMPILER:FILEPATH="g++" -DCMAKE_C_FLAGS="-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -Wall" -DCMAKE_CXX_FLAGS="-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -Wall" -DCMAKE_SKIP_RPATH=ON -DCMAKE_VERBOSE_MAKEFILE=ON -DALPS_BUILD_APPLICATIONS:BOOL=ON -DALPS_ENABLE_OPENMP:BOOL=ON -DALPS_BUILD_FORTRAN:BOOL=ON -DCMAKE_Fortran_FLAGS:STRING=-fopenmp -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed" -DCMAKE_MODULE_LINKER_FLAGS="-Wl,--as-needed" -DCMAKE_EXE_LINKER_FLAGS="-Wl,--as-needed"
As seen here, the boost library files in question are present:
$ ls -l /usr/lib/*boost*mpi* -rw-r--r-- 1 root root 3127528 Nov 11 16:37 /usr/lib/libboost_mpi.a lrwxrwxrwx 1 root root 14 Nov 11 16:37 /usr/lib/libboost_mpi-mt.a -> libboost_mpi.a lrwxrwxrwx 1 root root 22 Nov 11 16:37 /usr/lib/libboost_mpi-mt.so -> libboost_mpi.so.1.46.1 lrwxrwxrwx 1 root root 22 Nov 11 16:37 /usr/lib/libboost_mpi.so -> libboost_mpi.so.1.46.1 -rw-r--r-- 1 root root 184496 Nov 11 16:37 /usr/lib/libboost_mpi.so.1.46.1
Here is the build error:
[ 28%] Building CXX object tool/CMakeFiles/archive.dir/archive_xml.cpp.o cd /home/tmac/src/alps/alps-2.0.2-r5790-src/alps/obj-x86_64-linux-gnu/tool && /usr/bin/g++ -DBIND_FORTRAN_LOWERCASE_UNDERSCORE -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -Wall -fopenmp -O3 -DNDEBUG -I/usr/include/mpich2 -I/usr/lib/pymodules/python2.7/numpy/core/include -I/usr/include/python2.7 -I/home/tmac/src/alps/alps-2.0.2-r5790-src/alps/obj-x86_64-linux-gnu/src -I/home/tmac/src/alps/alps-2.0.2-r5790-src/alps/src -o CMakeFiles/archive.dir/archive_xml.cpp.o -c /home/tmac/src/alps/alps-2.0.2-r5790-src/alps/tool/archive_xml.cpp Linking CXX executable archive cd /home/tmac/src/alps/alps-2.0.2-r5790-src/alps/obj-x86_64-linux-gnu/tool && /usr/bin/cmake -E cmake_link_script CMakeFiles/archive.dir/link.txt --verbose=1 /usr/bin/g++ -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -Wall -fopenmp -O3 -DNDEBUG -Wl,--as-needed CMakeFiles/archive.dir/archive.cpp.o CMakeFiles/archive.dir/archive_index.cpp.o CMakeFiles/archive.dir/archive_node.cpp.o CMakeFiles/archive.dir/archive_plot.cpp.o CMakeFiles/archive.dir/archive_sqlite.cpp.o CMakeFiles/archive.dir/archive_xml.cpp.o -o archive -rdynamic -lz ../src/alps/libalps.so.2.0.2 -lsqlite3 -lz -lboost_mpi-mt -lboost_date_time-mt -lboost_filesystem-mt -lboost_program_options-mt -lboost_python -lboost_regex-mt -lboost_system-mt -lboost_serialization-mt -lboost_thread-mt -lpthread -lboost_mpi-mt -lboost_date_time-mt -lboost_filesystem-mt -lboost_program_options-mt -lboost_python -lboost_regex-mt -lboost_system-mt -lboost_serialization-mt -lboost_thread-mt -lpthread -lhdf5 -lhdf5_hl -lhdf5 -lhdf5_hl /usr/lib/python2.7/config/libpython2.7.so -lssl -lcrypto -lssl -lcrypto -L/usr/lib -lz -lpthread -ldl -lutil -lmpichcxx -lmpich -lopa -lmpl -lrt -lcr -lpthread -lmpich -lopa -lmpl -lrt -lcr -lpthread ../src/alps/libalps.so.2.0.2: undefined reference to `boost::mpi::communicator::communicator(int const&, boost::mpi::comm_create_kind)' ../src/alps/libalps.so.2.0.2: undefined reference to `boost::mpi::communicator::operator int() const' collect2: ld returned 1 exit status make[3]: *** [tool/archive] Error 1 make[3]: Leaving directory `/home/tmac/src/alps/alps-2.0.2-r5790-src/alps/obj-x86_64-linux-gnu' make[2]: *** [tool/CMakeFiles/archive.dir/all] Error 2 make[2]: Leaving directory `/home/tmac/src/alps/alps-2.0.2-r5790-src/alps/obj-x86_64-linux-gnu' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/tmac/src/alps/alps-2.0.2-r5790-src/alps/obj-x86_64-linux-gnu' make: *** [debian/stamp-makefile-build] Error 2
Any idea?
Best regards Torquil M. Sørensen <CMakeCache.txt>