【发布时间】:2014-06-19 16:34:17
【问题描述】:
我想在 Win7 机器上为 python 3.4 项目使用 Boost.python 它将连接到我们的 C++ DLL。我正在通过 boost.python 工作 教程并且无法使其工作(请参见下面的第 14 步)。我不认为这 问题与 python 3.4 有关,但更简单(缺少路径设置 Visual Studio 命令提示符)。我不知道如何解决它!救命!
以下是我正在做的事情的详细信息:
正如我所说,这是一台 Win7(虚拟)机器,我正在尝试使用 32 位运行 蟒蛇/视觉工作室。我确实安装了 python 3.4 并且在路径中......
从这个讨论开始: How to use Boost in Visual Studio 2010
我执行以下操作:
- 启动 Visual Studio 2010 命令提示符:
Menu->Programs->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio Command Prompt cd C:\Boost\boost_1_55_0bootstrap-
b2 toolset=msvc-10.0 --build-type=complete --with-python --libdir=C:\Boost\lib\i386 install初步警告link.jam: No such file or directoryC:\Boost\boost_1_55_0>dir C:\Boost\lib\i386 Volume in drive C has no label. Volume Serial Number is BCA0-48C6 Directory of C:\Boost\lib\i386 06/19/2014 11:45 AM <DIR> . 06/19/2014 11:45 AM <DIR> .. 06/19/2014 11:45 AM 217,088 boost_python-vc100-1_55.dll 06/19/2014 11:45 AM 188,908 boost_python-vc100-1_55.lib 06/19/2014 11:43 AM 496,640 boost_python-vc100-gd-1_55.dll 06/19/2014 11:43 AM 190,156 boost_python-vc100-gd-1_55.lib 06/19/2014 11:42 AM 217,088 boost_python-vc100-mt-1_55.dll 06/19/2014 11:42 AM 190,156 boost_python-vc100-mt-1_55.lib 06/19/2014 11:25 AM 496,640 boost_python-vc100-mt-gd-1_55.dll 06/19/2014 11:25 AM 191,452 boost_python-vc100-mt-gd-1_55.lib 06/19/2014 11:30 AM 5,757,576 libboost_python-vc100-1_55.lib 06/19/2014 11:29 AM 22,050,448 libboost_python-vc100-gd-1_55.lib 06/19/2014 11:24 AM 5,758,472 libboost_python-vc100-mt-1_55.lib 06/19/2014 11:23 AM 22,051,792 libboost_python-vc100-mt-gd-1_55.lib 06/19/2014 11:32 AM 6,247,162 libboost_python-vc100-mt-s-1_55.lib 06/19/2014 11:31 AM 21,969,684 libboost_python-vc100-mt-sgd-1_55.lib 06/19/2014 11:35 AM 6,246,266 libboost_python-vc100-s-1_55.lib 06/19/2014 11:33 AM 21,968,340 libboost_python-vc100-sgd-1_55.lib 16 File(s) 114,237,868 bytes 2 Dir(s) 14,676,119,552 bytes free 打开 Visual Studio 2010 并创建名为
Python.Boost的新“空项目”- 右击
Property Manager->Release|Win32->Microsoft.Cpp.Win32.user并选择Properties - 选择“VC++ 目录”
- 编辑“包含目录”以添加
C:\Boost\include\boost_1_55_0\boost;C:\Python34\include - 编辑“库目录”以添加
C:\Boost\lib\i386;C:\Python34\libs - 按照此处的说明进行操作:http://www.boost.org/doc/libs/1_55_0/libs/python/doc/tutorial/doc/html/python/hello.html
-
在主目录中创建
user-config.jam,内容如下:# MSVC configuration using msvc : 10.0 ; # Python configuration: using python : 3.4 : C:\\Python34 : C:\\Python34\\include : C:\\Python34\\libs ; 打开一个 Windows 命令提示符(从 Python.Boost 项目通过 Tools->Visual Studio 命令提示符开始
cd C:\Boost\boost_1_55_0\libs\python\example\tutorial-
bjamC:\Boost\boost_1_55_0\libs\python\example\tutorial> bjam link.jam: No such file or directory ...patience... ...patience... ...found 1685 targets... ...updating 6 targets... msvc.link.dll bin\msvc-10.0\debug\hello_ext.pyd LINK : fatal error LNK1104: cannot open file 'boost_python-vc100-mt-gd-1_55.lib' call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86 >nul link /NOLOGO /INCREMENTAL:NO /DLL /DEBUG /MACHINE:X86 /MANIFEST /subsystem:console /out:"bin\msvc-10.0\debug\hello_ext.pyd" /IMPLIB:"bin\msvc-10.0\debug\hello_ext.lib" /LIBPATH:"C:\Python34\libs" @"bin\msvc-10.0\debug\hello_ext.pyd.rsp" if %ERRORLEVEL% NEQ 0 EXIT %ERRORLEVEL% ...failed msvc.link.dll bin\msvc-10.0\debug\hello_ext.pyd bin\msvc-10.0\debug\hello_ext.lib bin\msvc-10.0\debug\hello_ext.pdb bin\msvc-10.0\debug\hello_ext.pdb... ...removing bin\msvc-10.0\debug\hello_ext.pdb ...skipped <p.>hello_ext.pyd for lack of <pbin\msvc-10.0\debug>hello_ext.pyd... ...failed updating 2 targets... ...skipped 1 target...
我错过了什么?似乎路径没有按预期设置?感谢您的帮助!
【问题讨论】:
-
请不要这样做两次!!删除此 Q/A 以支持较新的 Q/A,或进行编辑以改进!
-
组合成一个怎么样,它们非常相似。在
boost::python论坛上抱怨文档很差。 -
好的。我明天可以把它们结合起来。到美国东部时间来晚了。
-
没问题,我很友好!晚安!
标签: python c++ visual-studio-2010 boost