使用find_package包含来自cpp-netlib-0.9.4的网络库

时间:2013-05-30 05:04:00

标签: boost cmake shared-libraries cpp-netlib

我正在使用CMake生成我的make文件。

但是,在我的一个文件中,我需要使用boost::network::uri::valid(uri_)。所以我已经包含了头文件(#include boost/network/uri.hpp),我正在使用boost::network::uri::valid(uri_)函数。

如何告诉CMake使用此标头uri.hpp并添加所需的库?

我已经读过我可以使用find_package但我对此没有或很少了解。

我正在使用cpp-netlib-0.9.4。

1 个答案:

答案 0 :(得分:0)

您想要使用

find_package(Boost 1.55)

找到Boost的标头和库。如果您在计算机上的某个自定义位置安装了Boost,请设置BOOST_INCLUDE_DIR,如下所示:

set(BOOST_INCLUDEDIR D:/Code/boost/boost_1_55_0)

命令cmake --help-package FindBoost将向您显示find_package(Boost)设置的各种变量的帮助,以便您可以为目标使用适当的库变量(如果需要,许多Boost库只是标题)。您可以在我关于test-driven development with Boost.Test的演讲中看到一些如何将CMake与下载的Boost发行版和Boost.Test结合使用的示例。