我第一次尝试使用boost::python,我从包含的教程开始,但我感到失望,因为我甚至不能在一整天的工作后构建任何东西。
我的开发工具是Python37,Boost1.69,VS 2017和Windows10操作系统。Python解释器和Boost的二进制文件都是64位版本。
我在"Z:/EXTERNOS/boost_1_69_0/tools/build“中构建了bjam.exe,但我没有将其包含在系统路径中(我测试了它,但得到了相同的错误)。我正在使用ECHO %HOMEDRIVE%%HOMEPATH%指示的文件夹中的下一个"user-config.bjam“文件:
import toolset : using ;
using msvc : 14.1 ;
using python
: 3.7 # Version
: "C:/Program Files/Python37/python.exe" # Interpreter
: "C:/Program Files/Python37/include" # inc dir
: "C:/Program Files/Python37/libs" # link libs
: # conditions
;然后,我在命令控制台中切换到文件夹"Z:/EXTERNOS/boost_1_69_0/libs/python/example/quickstart“,并运行以下语句:
Z:\EXTERNOS\boost_1_69_0\tools\build\bjam.exe控制台中的输出如下:
"C:/Program" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
...found 26 targets...
...updating 6 targets...
compile-c-c++ extending.obj
extending.cpp
extending.cpp(5): fatal error C1083: No se puede abrir el archivo incluir: 'boost/python/class.hpp': No such file or directory
call "..\bin\standalone\msvc\msvc-14.1\msvc-setup.bat" >nul
cl /Zm800 -nologo @"extending.obj.rsp"
...failed compile-c-c++ extending.obj...
...skipped <p.>extending.pyd for lack of <p.>extending.obj...
...skipped <p.>extending.pdb for lack of <p.>extending.obj...
compile-c-c++ embedding.obj
embedding.cpp
embedding.cpp(6): fatal error C1083: No se puede abrir el archivo incluir: 'boost/python.hpp': No such file or directory
call "..\bin\standalone\msvc\msvc-14.1\msvc-setup.bat" >nul
cl /Zm800 -nologo @"embedding.obj.rsp"
...failed compile-c-c++ embedding.obj...
...skipped <p.>embedding.exe for lack of <p.>embedding.obj...
...skipped <p.>embedding.pdb for lack of <p.>embedding.obj...
...failed updating 2 targets...
...skipped 4 targets...我注意到很多人都有类似的问题,但提供给他们的测试解决方案似乎对我不起作用。
你知道什么是失败的吗?
发布于 2019-01-29 20:54:00
在与bjam再次斗争了一段时间后,我放弃了,开始寻找另一种更简单的方法。其中有一些:使用CMake、python disutils...但我发现最适合使用c++和msvc的人使用的是下一个:
远比官方的bjam系统更容易!
https://stackoverflow.com/questions/54416687
复制相似问题