【问题标题】:Which library to link to user boost::intrusive_ptr哪个库链接到用户 boost::intrusive_ptr
【发布时间】:2012-08-30 15:12:12
【问题描述】:

是否有可能找出为使用 boost::intrusive_ptr 的库链接的库文件?

我尝试使用 boost bcp 工具,但这并没有给出任何提示 dylib boost::intrusive_ptr 被编译的提示。

在我的系统上,我编译了这些 boost 库(版本 1.49.0):

/usr/local/Cellar/boost/1.49.0/lib/
libboost_chrono-mt.a            libboost_iostreams-mt.a         libboost_math_c99l-mt.dylib     libboost_program_options-mt.a       libboost_serialization-mt.dylib     libboost_timer-mt.dylib
libboost_chrono-mt.dylib        libboost_iostreams-mt.dylib     libboost_math_tr1-mt.a          libboost_program_options-mt.dylib   libboost_signals-mt.a           libboost_unit_test_framework-mt.a
libboost_date_time-mt.a         libboost_locale-mt.a            libboost_math_tr1-mt.dylib      libboost_python-mt.a            libboost_signals-mt.dylib       libboost_unit_test_framework-mt.dylib
libboost_date_time-mt.dylib     libboost_locale-mt.dylib        libboost_math_tr1f-mt.a         libboost_python-mt.dylib        libboost_system-mt.a            libboost_wave-mt.a
libboost_exception-mt.a         libboost_math_c99-mt.a          libboost_math_tr1f-mt.dylib     libboost_random-mt.a            libboost_system-mt.dylib        libboost_wave-mt.dylib
libboost_filesystem-mt.a        libboost_math_c99-mt.dylib      libboost_math_tr1l-mt.a         libboost_random-mt.dylib        libboost_test_exec_monitor-mt.a     libboost_wserialization-mt.a
libboost_filesystem-mt.dylib        libboost_math_c99f-mt.a         libboost_math_tr1l-mt.dylib     libboost_regex-mt.a         libboost_thread-mt.a            libboost_wserialization-mt.dylib
libboost_graph-mt.a         libboost_math_c99f-mt.dylib     libboost_prg_exec_monitor-mt.a      libboost_regex-mt.dylib         libboost_thread-mt.dylib
libboost_graph-mt.dylib         libboost_math_c99l-mt.a         libboost_prg_exec_monitor-mt.dylib  libboost_serialization-mt.a     libboost_timer-mt.a

lib 名称本身并不总是提示找到要链接的文件(例如 boost::asio 在 lboost_system-mt 中)。显然,随机链接是没有意义的。如果我使用 boost 中的任何东西,有什么方法可以找到依赖项吗?

最好, 塞巴斯蒂安

【问题讨论】:

  • intrusive_ptr 只是标题。不需要链接库。
  • 我要编译的lib的头文件如下所示:#include #include #include 我正在链接 lboost_thread-mt 但仍然收到未定义符号的链接器错误
  • @SebastianB。这与intrusive_ptr 无关。您缺少哪些符号?顺便说一句,可能值得更改问题或发布新问题。
  • 是的,我确实发布了一个新问题:stackoverflow.com/questions/12212328/…

标签: c++ boost linker shared-libraries


【解决方案1】:

intrusive_ptr 是 Smart Pointers 库的一部分,它只是标头,即您不需要链接任何东西。

Boost.Asio 不在 lboost_system-mt 中,它只是使用 Boost.System(记录在案)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-15
    • 2012-05-03
    • 2011-12-28
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    • 2015-02-13
    相关资源
    最近更新 更多