What you were trying to do
Build vg (master branch)
What you wanted to happen
Type make; get an executable some minutes later
What actually happened
boost-subset fails to build, causing vowpal-wabbit build to be broken but apparently there, which causes main.o linking to fail because recalibrate_main.o depends on VW.
What data and command line to use to make the problem recur, if applicable
NIH Biowulf, RHEL, attempted with GCC 6.4.0 and 7.4.0
. ./source_me.sh && cd deps/boost-subset && ./bootstrap.sh --with-libraries=program_options --libdir=/spin1/users/dawsonet/vg/lib --includedir=/spin1/users/dawsonet/vg/include && ./b2 --ignore-site-config --link=static install
Building Boost.Build engine with toolset gcc... tools/build/src/engine/bin.linuxx86_64/b2
Unicode/ICU support for Boost.Regex?... /usr
Backing up existing Boost.Build configuration in project-config.jam.16
Generating Boost.Build configuration in project-config.jam...
Bootstrapping is done. To build, run:
./b2
To adjust configuration, edit 'project-config.jam'.
Further information:
- Command line help:
./b2 --help
- Getting started guide:
http://www.boost.org/more/getting_started/unix-variants.html
- Boost.Build documentation:
http://www.boost.org/build/doc/html/index.html
/spin1/users/dawsonet/vg/deps/boost-subset/libs/predef/check/../tools/check/predef.jam:46: Unescaped special character in argument $(language)::$(expression)
Performing configuration checks
- default address-model : 64-bit (cached)
- default architecture : x86 (cached)
Component configuration:
- atomic : not building
- chrono : not building
- filesystem : not building
- program_options : building
- regex : not building
- system : not building
- test : not building
- timer : not building
...patience...
...found 6136 targets...
...updating 8 targets...
gcc.compile.c++ bin.v2/libs/program_options/build/gcc-6.4.0/release/link-static/threading-multi/cmdline.o
libs/program_options/src/cmdline.cpp: In member function ‘void boost::program_options::detail::cmdline::init(const std::vector<std::__cxx11::basic_string<char> >&)’:
libs/program_options/src/cmdline.cpp:106:15: error: ‘class boost::program_options::detail::cmdline’ has no member named ‘m_args’; did you mean ‘args’?
this->m_args = args;
^~~~~~
libs/program_options/src/cmdline.cpp: In member function ‘std::vector<boost::program_options::basic_option<char> > boost::program_options::detail::cmdline::run()’:
libs/program_options/src/cmdline.cpp:247:32: error: ‘m_args’ was not declared in this scope
vector<string>& args = m_args;
^~~~~~
"g++" -m64 -pthread -O3 -finline-functions -Wno-inline -Wall -DBOOST_ALL_NO_LIB=1 -DNDEBUG -I"." -c -o "bin.v2/libs/program_options/build/gcc-6.4.0/release/link-static/threading-multi/cmdline.o" "libs/program_options/src/cmdline.cpp"
...failed gcc.compile.c++ bin.v2/libs/program_options/build/gcc-6.4.0/release/link-static/threading-multi/cmdline.o...
...skipped <pbin.v2/libs/program_options/build/gcc-6.4.0/release/link-static/threading-multi>libboost_program_options.a(clean) for lack of <pbin.v2/libs/program_options/build/gcc-6.4.0/release/link-static/threading-multi>cmdline.o...
...skipped <pbin.v2/libs/program_options/build/gcc-6.4.0/release/link-static/threading-multi>libboost_program_options.a for lack of <pbin.v2/libs/program_options/build/gcc-6.4.0/release/link-static/threading-multi>cmdline.o...
...skipped <p/spin1/users/dawsonet/vg/lib>libboost_program_options.a for lack of <pbin.v2/libs/program_options/build/gcc-6.4.0/release/link-static/threading-multi>libboost_program_options.a...
gcc.compile.c++ bin.v2/libs/program_options/build/gcc-6.4.0/release/threading-multi/cmdline.o
libs/program_options/src/cmdline.cpp: In member function ‘void boost::program_options::detail::cmdline::init(const std::vector<std::__cxx11::basic_string<char> >&)’:
libs/program_options/src/cmdline.cpp:106:15: error: ‘class boost::program_options::detail::cmdline’ has no member named ‘m_args’; did you mean ‘args’?
this->m_args = args;
^~~~~~
libs/program_options/src/cmdline.cpp: In member function ‘std::vector<boost::program_options::basic_option<char> > boost::program_options::detail::cmdline::run()’:
libs/program_options/src/cmdline.cpp:247:32: error: ‘m_args’ was not declared in this scope
vector<string>& args = m_args;
^~~~~~
"g++" -fPIC -m64 -pthread -O3 -finline-functions -Wno-inline -Wall -DBOOST_ALL_NO_LIB=1 -DBOOST_PROGRAM_OPTIONS_DYN_LINK=1 -DNDEBUG -I"." -c -o "bin.v2/libs/program_options/build/gcc-6.4.0/release/threading-multi/cmdline.o" "libs/program_options/src/cmdline.cpp"
...failed gcc.compile.c++ bin.v2/libs/program_options/build/gcc-6.4.0/release/threading-multi/cmdline.o...
...skipped <pbin.v2/libs/program_options/build/gcc-6.4.0/release/threading-multi>libboost_program_options.so.1.67.0 for lack of <pbin.v2/libs/program_options/build/gcc-6.4.0/release/threading-multi>cmdline.o...
...skipped <p/spin1/users/dawsonet/vg/lib>libboost_program_options.so.1.67.0 for lack of <pbin.v2/libs/program_options/build/gcc-6.4.0/release/threading-multi>libboost_program_options.so.1.67.0...
...skipped <p/spin1/users/dawsonet/vg/lib>libboost_program_options.so for lack of <p/spin1/users/dawsonet/vg/lib>libboost_program_options.so.1.67.0...
...failed updating 2 targets...
...skipped 6 targets...
make: *** [lib/libboost_program_options.a] Error 1
This appears to be a problem only if there's another version of boost out there in the environment somewhere. I'm not sure why it happens but it's resolved by unloading the boost module (any version). Closing.
Please describe:
What you were trying to do Build vg (master branch)
What you wanted to happen Type
make
; get an executable some minutes laterWhat actually happened boost-subset fails to build, causing vowpal-wabbit build to be broken but apparently there, which causes main.o linking to fail because recalibrate_main.o depends on VW.
What data and command line to use to make the problem recur, if applicable NIH Biowulf, RHEL, attempted with GCC 6.4.0 and 7.4.0