【发布时间】: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