我已经下载了Boost 1.57.0并构建了bcp:
./bootstrap.sh
./b2 tools/bcp/
然后我尝试使用filesystem
提取bcp
模块:
./dist/bin/bcp filesystem ~/Desktop/test
但结果令人困惑:test
现在有3个文件夹:boost
,docs
和libs
。 boost
和libs
都包含名为filesystem
的文件夹,但这些文件夹中的源文件不同。为什么我有libs
文件夹?我是从boost
还是libs
导入?
答案 0 :(得分:1)
要使用C ++库,您需要
编译(预处理)时的标题。
他们在boost
链接时的库。
他们在libs
某些boost库只是标题。有些是可选的标题。我认为b2
可以选择列出哪些库需要链接(并因此构建)。
你将“root”称为BOOST_DIR(BOOST_DIR=~/Desktop/test
)。因此你要添加
CPPFLAGS+=-isystem $BOOST_DIR
LDFLAGS+=-L$BOOST_DIR/libs
然后根据您的需要:
LDFLAGS+=-lboost_system
等。当然,根据您最喜欢的构建系统量身定制