mar*_*ega 1 c++ regex boost g++
我在构建一个简单的c ++程序时遇到了麻烦,该程序可以从boost库中测试出正则表达式.我遇到的问题是在链接阶段发生,我不知道自己修复错误.
在使用正则表达式的.cpp程序中,我使用了以下include行.
#include <boost/regex.hpp>
Run Code Online (Sandbox Code Playgroud)
我不知道应该用什么命令来使用g ++来构建程序.我尝试使用以下命令行(及其变体)来构建程序.
g++ -I/usr/include/regex -L/usr/lib -llibboost_regex main.cpp -o regex_test
Run Code Online (Sandbox Code Playgroud)
其他可能相关的信息:
Operating system: Arch linux
g++ version: 4.6.2 20120120 (prerelease)
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
假设您已经使用boost和boost-libs包安装了Boost ,
<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
Run Code Online (Sandbox Code Playgroud)