|
@@ -0,0 +1,80 @@
|
|
|
+# Using Conan
|
|
|
+
|
|
|
+If you're not using the most recent Linux, you will have an older version of boost.
|
|
|
+
|
|
|
+Conan can solve that, (or, in cases where you want to use a newer boost then what is provided).
|
|
|
+
|
|
|
+## Using Conan to find things
|
|
|
+
|
|
|
+This searches conan for any/all boost versions.
|
|
|
+
|
|
|
+```conan search boost --remote=conancenter```
|
|
|
+
|
|
|
+What settings are there for the boost library that I might want to use?
|
|
|
+
|
|
|
+```conan search boost/1.71.0@```
|
|
|
+
|
|
|
+## Setup for TWProxy
|
|
|
+
|
|
|
+Here's how:
|
|
|
+
|
|
|
+### conanfile.txt
|
|
|
+
|
|
|
+Create conanfile with:
|
|
|
+
|
|
|
+```
|
|
|
+[requires]
|
|
|
+boost/1.71.0
|
|
|
+
|
|
|
+[generators]
|
|
|
+cmake
|
|
|
+```
|
|
|
+
|
|
|
+### CMakeLists.txt
|
|
|
+
|
|
|
+Below the DEBUG or RELEASE section add:
|
|
|
+
|
|
|
+```
|
|
|
+add_definitions("-std=c++11")
|
|
|
+set(Boost_USE_STATIC_LIBS ON)
|
|
|
+
|
|
|
+include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
|
|
|
+conan_basic_setup()
|
|
|
+```
|
|
|
+
|
|
|
+Below the C++ Standard section comment out:
|
|
|
+
|
|
|
+```
|
|
|
+# FIND_PACKAGE( Boost 1.60 COMPONENTS program_options log_setup log REQUIRED )
|
|
|
+# INCLUDE_DIRECTORIES( ${Boost_INCLUDE_DIR} )
|
|
|
+```
|
|
|
+
|
|
|
+Change all the target_link_libraries lines, replacing Boost_LIBRARIES with CONAN_LIBS:
|
|
|
+
|
|
|
+```
|
|
|
+# target_link_libraries(test-galaxy gtest_main ${Boost_LIBRARIES} yaml-cpp)
|
|
|
+target_link_libraries(test-galaxy gtest_main ${CONAN_LIBS} yaml-cpp)
|
|
|
+# TARGET_LINK_LIBRARIES( twproxy ${Boost_LIBRARIES} pthread yaml-cpp)
|
|
|
+TARGET_LINK_LIBRARIES( twproxy ${CONAN_LIBS} pthread yaml-cpp)
|
|
|
+```
|
|
|
+
|
|
|
+### Conan install
|
|
|
+
|
|
|
+The --settings isn't needed if you change the global settings with:
|
|
|
+
|
|
|
+```conan profile update settings.compiler.libcxx=libstdc++11 default```
|
|
|
+
|
|
|
+
|
|
|
+```
|
|
|
+cd build
|
|
|
+conan install --settings compiler.libcxx="libstdc++11" ../
|
|
|
+```
|
|
|
+
|
|
|
+or
|
|
|
+
|
|
|
+```
|
|
|
+cd build
|
|
|
+conan install ..
|
|
|
+```
|
|
|
+
|
|
|
+A normal build should work just fine.
|