Boost Python,Visual Studio链接到错误的boost dll
Posted
技术标签:
【中文标题】Boost Python,Visual Studio链接到错误的boost dll【英文标题】:Boost Python, Visual Studio links to wrong boost dll 【发布时间】:2016-01-22 11:43:15 【问题描述】:我使用了dependency walker,发现VS没有链接到boost_python3_...
,而是链接到boost_python_...
。我删除了非 3 版本,但现在链接器抱怨它找不到 boost_python-vc140-mt-1_60.lib
。我必须做什么才能与 Python 3 boost 库链接?还是非 3 版本也用于 python 3?
【问题讨论】:
您使用的是哪个编译器?对于 vc 定义 BOOST_ALL_NO_LIB 关闭自动链接。然后显式添加 .lib 作为附加链接器输入(设置/链接器/输入)。我遇到了同样的问题:***.com/questions/44153858/… 感谢您的回复。其实我换成了pybind11,不记得当时用的是哪个编译器了。我猜是 vs2015 附带的那个 【参考方案1】:我遇到了同样的问题,这些选项对我来说效果很好:
转到 boost/python/detail/config.hpp 并将 BOOST_LIB_NAMe 更改为 boost_python3 而不是 boost_python。
通过定义 BOOST_ALL_NO_LIB 开启自动链接,然后将 boost_python3...lib 显式设置为链接器依赖项。
【讨论】:
以上是关于Boost Python,Visual Studio链接到错误的boost dll的主要内容,如果未能解决你的问题,请参考以下文章
使用 Visual Studio 2008 构建 boost python 示例
无法在 Visual Studio 2008 中构建 Boost.python。编译出错
在使用 Visual Studio 2017 和 boost 构建的 python 中加载自定义 dll 时出现依赖错误