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. python3.5 urllib.parse.unquote 乱码2. html5 - node静态资源服务器设置了Cache-Control,但浏览器从来不走3043. android - ionic应用打包部署了,但是连接不上服务器,就连写一个a标签链接到百度都不可以4. mysql - 这里的sql语句该怎么写5. Mysql 关于 FOUND_ROWS() 和 ROW_COUNT() 函数6. mysql - msyql 判断字段不为空 简单方法7. mysql - laravel 子查询的问题8. 老师百度网盘分享一下WampServer的包啊,我们下载几kb要下载一天的.9. mysql中的collate关键字是什么意思?10. mysql - 使用update语句同时更新两个表的问题?
