最近需要使用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中的任意一个就行
至于为什么,不好意思没有研究过。但是解决方法我转载了: 大家可以看看
好了终于不报这个错误了,以为万事大吉了可以一编译。我去还不如找不到文件(呵呵...)。下面的错误坑啊
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和安装路径,你的可能就不一样了,要是默认安装只需要将版本号改了就行了)
上面的错误就是第二点引起的