0

我正在MicroSoft Visual Studios 2012中使用Boost庫,用於將嵌入Python的C++程序。問題是當我嘗試構建解決方案[F7];我得到這個::Microsoft Visual Studios 2012無法打開「python33.lib」

Error 1 error LNK1104: cannot open file 'python33.lib' C:\Users\usr\Documents\Visual Studio 2012\Projects\ConsoleApplication1\ConsoleApplication1\LINK

的問題是,我不知道這是什麼,手段,或如何解決它的任何線索。 我已經試圖將我的python文件夾移動到我的桌面,因爲它最初是在C:\,我想也許這是一個權限錯誤,但沒有做任何事情。

這裏是一個教程,我是在準備閱讀的,項目::

// ConsoleApplication1.cpp : Defines the entry point for the console application. 
// 

#include "stdafx.h" 
#include <boost/lambda/lambda.hpp> 
#include <boost/python.hpp> 

using namespace boost::python; 

int main(int argc, char ** argv) { 
    try { 
    Py_Initialize(); 

    object main_module((
     handle<>(borrowed(PyImport_AddModule("__main__"))))); 

    object main_namespace = main_module.attr("__dict__"); 

    handle<> ignored((PyRun_String("print \"Hello, World\"", 
            Py_file_input, 
            main_namespace.ptr(), 
            main_namespace.ptr()))); 
    } catch(error_already_set) { 
    PyErr_Print(); 
    } 
} 

--visual影城2012 --Windows 7 64 --Python 3.3.2 我的代碼 - Boost庫 --Python嵌入式C++程序

--link補習頁面:: http://wiki.python.org/moin/boost.python/EmbeddingPython

+1

看起來錯誤與您的代碼無關。這只是一個鏈接錯誤。你需要確保你的python33.lib在預期的位置。這應該指向你在正確的方向 - http://stackoverflow.com/questions/10847076/how-do-i-add-a-lib-file-to-link-in-visual-c-2010。 – David

+0

那麼幫助幾乎沒有。現在我有'錯誤錯誤LNK1104:無法打開文件'boost_python-vc110-mt-gd-1_54.lib'\t C:\ Users \ usr \ Documents \ Visual Studio 2012 \ Projects \ ConsoleApplication1 \ ConsoleApplication1 \ LINK ' –

+0

我有該文件,但它不會看到它並將其鏈接。 –

回答

1

感謝所有幫助大衛。

對於遇到這個問題的任何人,這裏是你需要做的。

右鍵單擊項目名稱(ConsoleApplication1等),並在C/C++ general下確保您的其他包含目錄包括python include,Lib和libs文件夾。以及boost root和boost lib(32/64)文件夾。

在鏈接器菜單下,在輸入子類別中,對於其他依賴項,您需要將其添加到那裏。

C:\Python33\libs\python33.lib 
C:\boost_1_54\lib32-msvc-11.0\boost_python-vc110-mt-gd-1_54.lib 

或者無論你的安裝目錄是什麼。以及其他所需的文件。 一旦完成你的項目應該建立。

一旦您準備好運行它,您需要將需要的任何.dll文件複製到可執行文件所在的文件夾中。

相關問題