python3.5 - c++调用python36
问题描述
首先需要配置环境,创建win32控制台程序,然后对工程进行配置。 项目–>属性–>vc++目录–>包含目录 添加python安装目录中include目录 项目–>属性–>vc++目录–>库目录 添加python安装目录中libs目录 链接器–>输入–>附加依赖项 添加python36.lib
注意,如果C++工程采用debug版本,需要将将 python安装目录里libs文件夹下的python36.lib文件复制,并将名字改成 python36_d.lib
按上述步骤运行代码,报错,一大堆无法解析符号
百度后找到解决方案:
修改 pyconfig.h
#ifdef _DEBUG # define Py_DEBUG #endif 改为#ifdef _DEBUG //# define Py_DEBUG #endif
# ifdef _DEBUG # pragma comment(lib,'python27_d.lib') # else # pragma comment(lib,'python27.lib') # endif /* _DEBUG */ 改为# ifdef _DEBUG # pragma comment(lib,'python27.lib') # else # pragma comment(lib,'python27.lib') # endif /* _DEBUG */
修改object.h
#if defined(Py_DEBUG) && !defined(Py_TRACE_REFS) #define Py_TRACE_REFS #endif 改为#if defined(Py_DEBUG) && !defined(Py_TRACE_REFS) // #define Py_TRACE_REFS #endif
运行后依旧报相同的错,我没办法了,求大神。
问题解答
回答1:还是用py2吧,py2可以用,py3的上述问问题我还是没有解决
相关文章:
1. docker安装后出现Cannot connect to the Docker daemon.2. docker gitlab 如何git clone?3. android - 项目时间长了,字符串文件strings有的字符串可能是多余的,有没有办法快速检测那些是没用的?4. javascript - 怎么看网站用了什么技术框架?5. mysql - 用PHPEXCEL将excel文件导入数据库数据5000+条,本地数据库正常,线上只导入15条,没有报错,哪里的问题?6. java报错Communications link failure 该如何解决?7. 刷新页面出现弹框8. 关于Android权限的获取问题,大家遇到过这样的情况嘛?9. angular.js - angularJs ngRoute怎么在路由传递空字符串及用ng-switch取得10. PC 手机兼容的 编辑器
