I have a problem building gearshifft against boost 1.68 on CentOS 7 with gcc 6.3. I'm not sure where this comes from as the identical build works on several flavors of Ubuntu and also on MSVC and MacOSX. Maybe it rings a bell with someone? Here is the log:
[5/10] /data/Tools/bin/c++ -DBOOST_ALL_NO_LIB=1 -DBOOST_ERROR_CODE_HEADER_ONLY -DCUFFT_ENABLED -DGEARSHIFFT_FLOAT16_SUPPORT=OFF -DGEARSHIFFT_INSTALL_CONFIG_FILE=/builds/BioDataAnalysis/gearshifft/share/gearshifft/extents.conf -DGEARSHIFFT_PRECISION_DOUBLE_ONLY=0 -DGEARSHIFFT_PRECISION_HALF_ONLY=0 -DGEARSHIFFT_PRECISION_SINGLE_ONLY=0 -D_GLIBCXX_USE_CXX11_ABI=1 -I/data/Tools/include -I/builds/BioDataAnalysis/gearshifft/inc -isystem /data/Debug/include -ggdb3 -fno-omit-frame-pointer -O1 -m64 -march=nehalem -mtune=haswell -DDEBUG -g -Wall -Wextra -Wold-style-cast -Wno-missing-braces -Wno-deprecated-declarations -Wno-ignored-attributes -Wno-unused-local-typedefs -std=c++14 -MD -MT test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o -MF test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o.d -o test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o -c /builds/BioDataAnalysis/gearshifft/test/test_cufft.cpp
[6/10] : && /data/Tools/bin/c++ -ggdb3 -fno-omit-frame-pointer -O1 -m64 -march=nehalem -mtune=haswell -DDEBUG -g -m64 -Wl,--disable-new-dtags test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o -o test/test_cufft libgearshifft_version.a libgearshifft_version.a /data/Debug/lib/libboost_system.a /data/Debug/lib/libboost_unit_test_framework.a /data/Debug/lib/libboost_program_options.a /data/Tools/lib64/libcudart_static.a -lpthread -ldl /usr/lib64/librt.so /data/Tools/lib64/libcufft_static_nocallback.a /data/Tools/lib64/libculibos.a && :
FAILED: test/test_cufft
: && /data/Tools/bin/c++ -ggdb3 -fno-omit-frame-pointer -O1 -m64 -march=nehalem -mtune=haswell -DDEBUG -g -m64 -Wl,--disable-new-dtags test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o -o test/test_cufft libgearshifft_version.a libgearshifft_version.a /data/Debug/lib/libboost_system.a /data/Debug/lib/libboost_unit_test_framework.a /data/Debug/lib/libboost_program_options.a /data/Tools/lib64/libcudart_static.a -lpthread -ldl /usr/lib64/librt.so /data/Tools/lib64/libcufft_static_nocallback.a /data/Tools/lib64/libculibos.a && :
/data/Debug/lib/libboost_unit_test_framework.a(debug.o): In function `boost::debug::debugger_break()':
/data/builds/Debug/boost_1_68_0/./boost/test/impl/debug.ipp:675: multiple definition of `boost::debug::debugger_break()'
test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o:/data/Debug/include/boost/test/impl/debug.ipp:675: first defined here
/data/Debug/lib/libboost_unit_test_framework.a(debug.o): In function `boost::debug::detect_memory_leaks(bool, boost::unit_test::basic_cstring<char const>)':
/data/builds/Debug/boost_1_68_0/./boost/test/impl/debug.ipp:955: multiple definition of `boost::debug::detect_memory_leaks(bool, boost::unit_test::basic_cstring<char const>)'
test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o:/data/Debug/include/boost/test/impl/debug.ipp:955: first defined here
/data/Debug/lib/libboost_unit_test_framework.a(debug.o): In function `boost::debug::break_memory_alloc(long)':
/data/builds/Debug/boost_1_68_0/./boost/test/impl/debug.ipp:991: multiple definition of `boost::debug::break_memory_alloc(long)'
test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o:/data/Debug/include/boost/test/impl/debug.ipp:991: first defined here
/data/Debug/lib/libboost_unit_test_framework.a(debug.o): In function `boost::debug::under_debugger()':
/data/builds/Debug/boost_1_68_0/./boost/test/impl/debug.ipp:635: multiple definition of `boost::debug::under_debugger()'
test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o:/data/Debug/include/boost/test/impl/debug.ipp:635: first defined here
/data/Debug/lib/libboost_unit_test_framework.a(debug.o): In function `boost::debug::attach_debugger(bool)':
/data/builds/Debug/boost_1_68_0/./boost/test/impl/debug.ipp:780: multiple definition of `boost::debug::attach_debugger(bool)'
test/CMakeFiles/test_cufft.dir/test_cufft.cpp.o:/data/Debug/include/boost/test/impl/debug.ipp:780: first defined here
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
I have a problem building gearshifft against boost 1.68 on CentOS 7 with gcc 6.3. I'm not sure where this comes from as the identical build works on several flavors of Ubuntu and also on MSVC and MacOSX. Maybe it rings a bell with someone? Here is the log: