哪个boost库链接到?

时间:2017-01-31 11:47:50

标签: c++ boost

好的,所以我有一个非常小的程序包含这三个boost进口:

#include <boost/asio.hpp>
#include <boost/lexical_cast.hpp>
#include <boost/thread.hpp>

但这只是一个例子,我想要一个适用于其他标题的答案,如果可能的话。现在看一下/ usr / lib会得到一个包含39个静态库对象的列表,我可以链接到(或者放入我的CMakeLists.txt): List of libraries

如何知道哪个库正在/ usr / include / boost中实现哪个boost标头?

这是我的CMakeLists.txt的相关部分:

set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED OFF)
set(Boost_USE_STATIC_RUNTIME OFF)
find_package(Boost
    1.63.0
    REQUIRED
    ????
)

1 个答案:

答案 0 :(得分:1)

Boost库具有文档here中定义的命名约定。例如。 libboost_thread.aBoost.Thread的静态库。

在标题源中,您可以找到相关的库名称,例如在boost/thread.hpp中有:

//  See www.boost.org/libs/thread for documentation. 

接下来,您需要了解库是否仅限标题。检查列表here

某些库需要其他Boost库,例如:在某些情况下,Boost.Asio需要Boost.SystemBoost.Regex。检查库使用情况documentation以了解此类依赖项。