2009-08-07 48 views
5

我有一个问题链接boost.asio。它采用boost.system和链接错误下手:链接boost.asio

/boost_1_39_0/boost/system/error_code.hpp:205:未定义的引用`的boost ::系统:: get_system_category()”

这意味着我需要链接boost.system。我已经建立了提升,现在我有几个lib文件。

  • boost_system-mgw32-d-1_39.dll和IIb
  • libboost_system-mgw34-d-1_39.lib
  • libboost_system-mgw34-MT-d-1_39.lib
  • libboost_system-mgw34- sd-1_39.lib

等等。我如何链接它们?我使用哪一个?我将它们全部复制在一起?

我的系统是win32 + mingw + eclipse cdt + qt 4.5.2 + qt集成eclipse。我已经了解到,我需要在LIBS =部分添加我的.pro文件。

你能给我一些提示吗?

谢谢。

回答

3

这些库是根据是否启用了多线程支持,静态和动态链接,调试和发布模式等命名的。下面是一些细节:

http://www.boost.org/doc/libs/1_39_0/more/getting_started/unix-variants.html#library-naming

我不知道关于日食,因为我不使用它,但用gcc(和MinGW),你需要指定一个目录来找到在图书馆(-L )和要链接的文件。例如,如果你想用单线程调试版本链接:

-L /路径/要/库-lboost_system-mgw34-SD-1_39