小编use*_*040的帖子

如何链接cpp-netlib

我想将Library cpp-netlib用于C++项目.因此我在自制软件的帮助下安装了boost库(操作系统是Mac OS X 10.8).然后我从项目主页下载了cpp-netlib,使用cmake为g ++创建了Makefile并成功应用了make."make test"通过了所有测试.然后我将cpp-netlib的include文件夹复制到boost目录中.

所以这就是麻烦开始的时候:我试图编译文档的第一个示例http-client,但无法使其工作.我用的时候

g++ test.cpp -o out -I/usr/local/Cellar/boost/1.53.0/include 
-L/usr/local/Cellar/boost/1.53.0/lib 
-lboost_system-mt -lboost_filesystem-mt -lboost_thread-mt
Run Code Online (Sandbox Code Playgroud)

我收到了这些链接器错误:

Undefined symbols for architecture x86_64:
  "boost::network::uri::detail::parse(__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, boost::network::uri::detail::uri_parts<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)", referenced from:
      boost::network::uri::uri::parse()  in ccs87Dq3.o
  "boost::network::http::impl::normal_delegate::normal_delegate(boost::asio::io_service&)", referenced from:
      boost::network::http::impl::connection_delegate_factory<boost::network::http::tags::http_async_8bit_udp_resolve>::new_connection_delegate(boost::asio::io_service&, bool, boost::optional<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, boost::optional<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >)in ccs87Dq3.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit …
Run Code Online (Sandbox Code Playgroud)

c++ linker boost cpp-netlib

12
推荐指数
1
解决办法
5358
查看次数

标签 统计

boost ×1

c++ ×1

cpp-netlib ×1

linker ×1