(先提醒一句,如果你用的python需要用到tensorflow的,还是别看了,下面装的是32位的python , 但是qt我又只能用32位的mingW版,这两个能兼容,可以运行。但是我python里面又要用到tensorflow,而tensorflow现在不支持32位的python,还在尝试把他配置好,你们如果有解决办法,麻烦推荐给我,但你如果python不用tensorflow的话,就不用理会前面这段话了,往下看吧)
哎,刚解决了一个困扰我两天的问题,想想都觉得开心,但这两天真的被弄到心态爆炸
出错的原因 我没有截图,但是就是在调用py的初始化之类的函数的时候,程序就一直报错 undefined reference to Py_Initialize 还有下面只要用到了py的一些函数,就都是这个问题, 我有按照网上的方法,在Py_Initialize之前写一句
Py_SetPythonHome(L"D:\\software\\python\\Scripts");
可是结果是,连这句也给我报错, 嗯,你很棒哦,你再这样我就要打你了哦!
然后我疯狂的找网上的跟我一样的问题的人,国内国外的网站都找了遍,有很多都不是我遇到的问题,哎,真的累。
现在我既然解决了,就把方法好好的记录下来,为了方便跟我遇到一样的问题的人。
方法总结:归根结底 你需要你的QT的位数和python的位数一样,
本人QT 5.8 32位 MinGw
python 3.5.2 32位
这都是我后来为了解决重装的 真的太难受了
分享qt 和python 的下载资源吧 QT : http://download.qt.io/archive/qt/
python: https://www.python.org/downloads/windows/
(记得下载一样的位数的,这是最关键的,下载位数对了就什么都行了)
这里安装就不给出了,都是很简单的安装,可以百度一下,安装好了后配置一下环境变量
好了,接下来,按照操作新建一个qt的项目,然后你需要往项目里添加python的库路径了
先右键点击项目,然后选择添加库,弹出后选择外部库
点击下一步
按如上格式添加库文件,和包含路径,并依次勾选掉一些东西,再点击下一步 再点击完成
大致写了一个原来会直接报错的程序,编译通过了,运行也ok 也算是这道坎过去了。以此来缅怀我逝去的两天光阴,
也用以让跟我有一样问题的人,可以早点解决掉问题。
希望对你们有帮助 ,好了,拜了拜。