我在构建一个简单的c ++程序时遇到了麻烦,该程序可以从boost库中测试出正则表达式。我遇到的问题是在链接阶段发生,我不知道自己修复错误。
在使用正则表达式的.cpp程序中,我使用了以下include行。
#include <boost/regex.hpp>
我不知道应该用什么命令来使用g ++来构建程序。我尝试使用以下命令行(及其变体)来构建程序。
g++ -I/usr/include/regex -L/usr/lib -llibboost_regex main.cpp -o regex_test
可能相关的其他信息:
Operating system: Arch linux
g++ version: 4.6.2 20120120 (prerelease)
任何帮助都将不胜感激。
答案 0 :(得分:5)
假设您已使用boost
和boost-libs
软件包
<boost/regex.hpp>
应存在于/usr/include/boost/regex.hpp
中。您不需要使用任何-I
标记,因为默认情况下应包含/usr/include
。-L
标记,因为链接时默认情况下也应包含/usr/lib
。-l
标志链接库libfoo.so
时,应删除前导“lib”部分。命令行应该是:
g++ main.cpp -o regex_test -lboost_regex