与 boost.python 和 python3 链接时出现问题
Trouble linking with boost.python and python3
当我尝试在Win10上的Visual Studio 2017中编译boost.python'Hello World'程序时,我遇到了以下链接错误:
LNK1104 cannot open file 'boost_python-vc141-mt-1_64.lib'
但是,我想与python3版本链接。我用这个命令构建了我的 boost.python 库
b2 --with-python variant=release link=shared address-model=64
在我的项目配置.jam文件中using python : 3.6 ;
,它产生
boost_python3-vc141-mt-1_64.dll
和boost_python3-vc141-mt-1_64.lib
我不知道为什么我的项目试图与 python2 版本链接。我从未在任何地方指定要链接的 boost.python 库,我不知道在哪里更改它。
如果重要,这是我尝试编译的c ++程序(转换为x64.dll(
#include <boost/python.hpp>
char const* greet() {
return "hello, world";
}
BOOST_PYTHON_MODULE(hello_ext) {
using namespace boost::python;
def("greet", greet);
}
根据我的经验,在Windows/VC++ Boost.Python的自动链接总是搜索boost_python-vc<blah-blah-blah>.lib
,而不管Python版本如何。当针对 Python 3 构建时,b2 实际上会生成 2 组 lib 文件:boost_python-vc...
和 boost_python3-vc...
。它们是相同的,只是名称不同。因此,如果您没有boost_python-vc141-mt-1_64.lib
文件,请通过删除3
来重命名boost_python3-vc141-mt-1_64
lib 和 dll 文件。
相关文章:
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 基于boost的程序的静态链接——zlib问题
- 使用jsoncpp库时出现链接问题
- Cmake 链接问题:未定义对 Button::mousePressEvent(QGraphicsSceneMouseE
- sqlite3 和生成文件中的链接出现问题
- 如何将GTest与CMake一起使用?遵循谷歌指南时的链接问题
- 未解决的外部链接问题
- 使用转换器提升 Python 问题 - 静态链接
- 'make check' GLIBC 运行时的链接问题
- 在树莓派上用libtorch构建程序时的链接问题
- QtCreator with C 库中的链接器问题
- 野牛弹性链接问题
- 与 AWS 开发工具包的链接问题
- 使用 NVIDIA GPU 在 Cygwin 中链接 OpenCL 库时遇到问题
- 为什么当我从语句检查中删除"+ mod"时,以下程序给出错误的答案。问题链接:https://www.codechef.com/problems/FFC219B
- PCL 和 CMake 的问题:链接时未定义统计异常值删除
- VC++使用gumbo查询时出现问题(链接错误)
- 使用CMake问题链接Boost(Ubuntu 14.04)
- MySQL连接器问题-链接等等
- MinGW 与 MSVC 的 dll 库问题链接(未定义的引用)