我找不到链接错误使用boost :: program_options。这里是一个示例c + +代码:链接错误升压:: program_options
# sample_code.cpp
#include <boost/program_options.hpp>
int main()
{
boost::program_options::options_description description("Test");
}
我也已经安装了使用优胜美地10.10.2上的MacPorts提升1.57.0。下面是相关的库:
/opt/local/lib/libboost_program_options-mt.a
让我们编译和链接下面的代码:
alias g++='/opt/local/bin/g++-mp-5 -std=gnu++14 -I/opt/local/include -L/opt/local/lib'
g++ sample_code.cpp -lboost_program_options-mt
同时在连接过程失败:
Undefined symbols for architecture x86_64:
"boost::program_options::options_description::options_description(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, unsigned int)"
ld: symbol(s) not found for architecture x86_64
有什么想法?
如果您在别名用法中颠倒编译器参数的顺序,它是否工作?如果是这样,http://stackoverflow.com/a/24675715/962089 – chris 2015-03-30 19:06:32
不是真的。我也尝试过使用clang ++和CMake以及其所有与boost相关的参数,这没有任何帮助! – 2015-03-30 19:20:37
你是什么意思的“不是真的”?库_does_在'.cpp'之后。 – 2015-03-30 19:26:34