我想在一個Win7機器上使用Boost.python來連接到我們的C++ DLL的Python 3.4項目 。我正在按照boost.python 教程的方式工作,無法使其工作(請參閱下面的步驟14)。我不認爲這個 問題與Python 3.4有關,但更容易一些(在Visual Studio命令提示符中缺少 中的路徑設置)。我無法弄清楚如何解決它!幫幫我!如何獲取boost.python教程使用Visual Studio 2010和Python 3.4?
下面是我在做什麼的詳細信息:
正如我說,這是一個Win7的(虛擬)機器,我想與32位 蟒蛇/ Visual Studio中運行。我有蟒蛇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_0
bootstrap
b2 toolset=msvc-10.0 --build-type=complete --with-python --libdir=C:\Boost\lib\i386 install
初始警告link.jam: No such file or directory
C:\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的開始。通過工具提升項目 - > Visual Studio命令提示符
cd C:\Boost\boost_1_55_0\libs\python\example\tutorial
bjam
C:\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...
我缺少什麼?似乎路徑未按預期設置?幫助讚賞!
[如何獲取boost.python教程示例以鏈接到Python3?](http://stackoverflow.com/questions/24314644/how-to-get-boost-python-tutorial-example-to- link-with-python3) –
請不要這樣做兩次!刪除這個Q/A而選擇較新的一個,或編輯改進! –
如何在一個單一的組合,他們非常相似。在'boost :: python'論壇上抱怨文檔很差。 –