vs2010呼叫python的方法
最近需要使用python的一些功能便捷開發C++程式,因為之前沒有做過所有遇到了些麻煩。那就是如何連線python
我去網上好多人且大多說都是:
將lib和include包含到vc++目錄就可以。
但是呢........下面這些錯誤有木有!!!
1>LINK : fatal error LNK1104: 無法開啟檔案“python27_d.lib”
解決方法:
#define MS_NO_COREDLL
//或者這個 #define Py_NO_ENABLE_SHARED
#include <python.h>
在呼叫python.h的前面加上上面的兩個define中的任意一個就行
至於為什麼,不好意思沒有研究過。但是解決方法我轉載了:http://blog.csdn.net/sunyan3517/article/details/51206958 大家可以看看
好了終於不報這個錯誤了,以為萬事大吉了可以一編譯。我去還不如找不到檔案(呵呵...)。下面的錯誤坑啊
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _Py_Finalize,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _PyEval_CallObjectWithKeywords,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _Py_BuildValue,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _PyObject_GetAttrString,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _PyArg_Parse,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _PyRun_StringFlags,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _PyModule_GetDict,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _PyImport_ImportModule,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _PyRun_SimpleStringFlags,該符號在函式 _wmain 中被引用
1>TraversalFolder.obj : error LNK2019: 無法解析的外部符號 _Py_Initialize,該符號在函式 _wmain 中被引用
是不是很蛋疼.....
這些就是因為並沒有完整的新增完需要的資訊
以下為所有設定資訊:
1 專案 ==》》專案屬性 == 》》配置屬性==》》vc++目錄
在這裡新增lib和include
2 專案 ==》》專案屬性 == 》》配置屬性==》》聯結器==》》輸入
在這裡新增C:\Python27\libs\python27.lib; (當然這裡是我的python的版本lib和安裝路徑,你的可能就不一樣了,要是預設安裝只需要將版本號改了就行了)
上面的錯誤就是第二點引起的