Bug #2589
closedBuild on MAC OS X - Mavericks failes
0%
Description
I'm trying to build wt 3.3.1 with boost 1.55, but the build fails with the following errors:
[ 72%] Building CXX object src/CMakeFiles/wt.dir/web/UriUtils.o
[ 72%] Building CXX object src/CMakeFiles/wt.dir/web/random_device.o
/Users/hansklabbers/Documents/wt-3.3.1/src/web/random_device.cpp:48:63: error: no member named 'min_value' in 'boost::random::random_device'
const boost::random_device::result_type boost::random_device::min_value;
^
/Users/hansklabbers/Documents/wt-3.3.1/src/web/random_device.cpp:49:63: error: no member named 'max_value' in 'boost::random::random_device'
const boost::random_device::result_type boost::random_device::max_value;
^
/Users/hansklabbers/Documents/wt-3.3.1/src/web/random_device.cpp:54:42: error: no member named 'default_token' in 'boost::random::random_device'
const char * const boost::random_device::default_token = "/dev/urandom";
^
3 errors generated.
make[2]: * [src/CMakeFiles/wt.dir/web/random_device.o] Error 1
make[1]: * [src/CMakeFiles/wt.dir/all] Error 2
make: * [all] Error 2
Boost has been build with the following command:
./b2 toolset=clang ---without-mpi ---prefix=/Users/hansklabbers/dev/HireMeDirect/Libraries cxxflags="-arch i386 -arch x86_64 -fvisibility=hidden -fvisibility-inlines-hidden -std=c+11 -stdlib=libc+ -ftemplate-depth=512" linkflags="-stdlib=libc" stage release
wt build command:
cmake -DCMAKE_CXX_FLAGS='-stdlib=libc' -DCMAKE_EXE_LINKER_FLAGS='-stdlib=libc' -DCMAKE_MODULE_LINKER_FLAGS='-stdlib=libc' -DWT_CPP_11_MODE='-std=c++11' ../
and then
make
With NO_BOOST_RANDOM ON
Kind regards,
Hans Klabbers
Updated by Wim Dumon almost 11 years ago
- Status changed from New to Resolved
Hi,
For all reasonably recent boost installations, WT_NO_BOOST_RANDOM must be set to OFF, and you must use the random library that comes with boost. Setting that variable to OFF should solve your compilation problems.
Additionally, I changed this to the default behavior in git, removing the auto-detect feature. It made sense during the transition period when boost just changed it's API, but now it seems to cause more problems than it solves.
Best regards,
Wim.
Updated by Koen Deforche almost 11 years ago
- Status changed from Resolved to Closed