Getting stuff to build with conan
From Just in Time
Revision as of 21:55, 17 March 2018 by Danny (Created page with "==Building against boost== Using package e.g. from '''Boost/1.64.0@conan/stable''' from Remote: conan-community=https://api.bintray.com/conan/conan-community/conan. ===ABI Ch...")
Building against boost
Using package e.g. from Boost/1.64.0@conan/stable from Remote: conan-community=https://api.bintray.com/conan/conan-community/conan.
Symptom: linker errors, specifically for functions that have std::string arguments or return types. This is due to the fact that gcc (as of gcc5?) defines the libstdc++11 standard classes to be in a namespace such as
std::__cxx11:: With default configuration conan will define _GLIBCXX_USE_CXX11_ABI=0 when building boost, which will use the older libstdc++. This conflicts with regular builds on gcc5+.
Either define the following in CMakeLists.txt (not recommended)
settings.compiler.libcxx = libstdc++11, either in ~/.conan/conan.conf or on the command line (-s)