【发布时间】:2013-12-21 15:26:42
【问题描述】:
我有一个使用 autotools 建立的项目来构建一个 C++ 库,其中包括与 Boost.Python 的 Python 绑定。 我的系统上有一个 Boost.Python 二进制文件,我想链接:
/usr/lib/libboost_python-py27.so.1.49.0
没有对应的 .la 文件,所以我想我可以将库的完整路径添加到类似于以下的 libtool 命令:
bash ./libtool --mode=link g++ -rpath /usr/local/lib src/o1.lo src/o2.lo ... \
/usr/lib/libboost_python-py27.so.1.49.0 -o libNSM.la
但是 libtool 正在从发出的 g++ 命令中丢弃 /usr/lib/libboost_python-py27.so.1.49.0。如果我手动运行 g++ 就可以了。
我怎样才能让 libtool 使用本机共享库,或者什么是处理这种情况的正确方法。我绝对希望用户能够使用他们现有的 boost 二进制文件。
【问题讨论】:
标签: c++ shared-libraries libtool