我试图在VS17上使用boost(1.68.0)/ Python(3.6)。我已经使用bjam.exe
安装了boost。是否由于未使用b2.exe
而导致此错误?
我的程序:
#include "stdafx.h"
#include <iostream>
#include <tuple>
#include <boost/python.hpp>
using namespace std;
char const* greet() {
return "hello";
}
BOOST_PYTHON_MODULE(hello_ext) {
using namespace boost::python;
def("greet", greet);
}
包含路径:F:\C++ lib\boost_1_68_0;C:\Users\anonymous\AppData\Local\Programs\Python\Python36\include;%(AdditionalIncludeDirectories)
其他库路径F:\C++ lib\boost_1_68_0\stage\lib;C:\Users\anonymous\AppData\Local\Programs\Python\Python36\libs;%(AdditionalLibraryDirectories)
我已经确保target machine
参数正确。
另外,我在boost_python
中找不到任何以stage/lib
为前缀的库,所有库名都以libboost_
答案 0 :(得分:0)
我有同样的问题,只需一点技巧即可解决。
1)运行VS Command Prompt
,进入boost根目录
2)运行bootstrap.bat
我认为您已经完成了这两个步骤,但是最后一步略有不同:
3)运行b2 stage link=static link=shared --with-python
然后您可以在boost_python36....
中找到stage/lib