Conan.io package for boost library
The packages generated with this conanfile can be found in conan.io.
- conan Conan.io
- cmake
- modern C++ compiler (Xcode, Visual Studio, etc.)
Here is an example how to build a project with conan-boost
.
-
write a
conanfile.txt
[requires] Boost/1.63.0@kbinani/develop [options] Boost:shared=true # false # write custom options here. see `package specific options` section for detail [generators] cmake
-
write a
CMakeLists.txt
project(example) cmake_minimum_required(VERSION 2.8) set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_BINARY_DIR}) include(conanbuildinfo) conan_basic_setup() add_executable(example main.cpp) target_link_libraries(example ${CONAN_LIBS})
-
create out-of-source build directory
mkdir debug32
-
install packages
cd debug32 conan install .. --update --build missing -s build_type=Debug -s arch=x86
-
generate project file
cd debug32 cmake .. -G "Visual Studio 14 2015"
or
cd debug32 cmake .. -G Xcode
etc.
-
build the project
cd debug32 cmake --build . --config Debug
option | default | description |
---|---|---|
Boost:shared |
True |
If True , build dynamic link libraries. This option will be ignored when header_only is set to True . |
Boost:header_only |
False |
If True , install boost with header only mode. |
Boost:cxxdefines |
; separated list of preprocessor macros. To define macro with value, escape = to %3D . ex) Boost:cxxdefines="FOO;BAR%3D1" |
|
Boost:cxxflags |
Additional compile flags, separated with ; . = should be escaped to %3D . ex) Boost::cxxflags=--foo;--bar%3D1 . This option will be ignored when header_only is set to True . |
|
Boost:without_atomic |
False |
If True , exclude the library from build. |
Boost:without_chrono |
False |
〃 |
Boost:without_container |
False |
〃 |
Boost:without_context |
False |
〃 |
Boost:without_coroutine |
False |
〃 |
Boost:without_coroutine2 |
False |
〃 |
Boost:without_date_time |
False |
〃 |
Boost:without_exception |
False |
〃 |
Boost:without_fiber |
False |
〃 |
Boost:without_filesystem |
False |
〃 |
Boost:without_graph |
False |
〃 |
Boost:without_graph_parallel |
True 1 |
〃 |
Boost:without_iostreams |
False |
〃 |
Boost:without_locale |
False |
〃 |
Boost:without_log |
False |
〃 |
Boost:without_math |
False |
〃 |
Boost:without_metaparse |
False |
〃 |
Boost:without_mpi |
True 1 |
〃 |
Boost:without_program_options |
False |
〃 |
Boost:without_python |
True 1 |
〃 |
Boost:without_random |
False |
〃 |
Boost:without_regex |
False |
〃 |
Boost:without_serialization |
False |
〃 |
Boost:without_signals |
False |
〃 |
Boost:without_system |
False |
〃 |
Boost:without_test |
False |
〃 |
Boost:without_thread |
False |
〃 |
Boost:without_timer |
False |
〃 |
Boost:without_type_erasure |
False |
〃 |
Boost:without_wave |
False |
〃 |
1: These libraries are excluded by default because they have external library dependecies such as python or mpi.