Windows下PythonQt編譯(vs2015+Qt5.11.2+PythonQt 3.2)
時間:2018年10月22日,學習任何物事都有個探索過程。歡迎留言探討。
在Qt程序中,添加python進行混合編程,可以使用Python API,但交互起來很麻煩,不友好。網上推薦使用PythonQt框架。
強調下:
PythonQt,方便Qt C++程序員,將python引入項目
PyQt PySide,給python程序員,將Qt界面引入項目
本機環境:
1、win7 64 旗艦版
2、Qt 5.11.2(MSVC 2015,32 bit)
3、Python 3.7.0 (32-bit)
4、PythonQt 3.2
準備工作:
1、安裝最新Qt5.11.2,地址http://download.qt.io/archive/qt/5.11/ ,直接下載鏈接。
http://download.qt.io/archive/qt/5.11/5.11.2/qt-opensource-windows-x86-5.11.2.exe
2、PythonQt是發布在Sourceforge上的一款開源的連接Qt與Python的框架,主頁地址http://pythonqt.sourceforge.net ,目前更新到版本3.2,直接下載鏈接:https://sourceforge.net/projects/pythonqt/files/latest/download,下載後解壓。
3、下載Python 3.7.0 主頁地址https://www.python.org/downloads/ ,直接下載鏈接:https://www.python.org/ftp/python/3.7.0/python-3.7.0.exe ,安裝時記得勾選” Add Python 3.7 to PATH
編譯前準備:
修改\PythonQt3.2\build下文件內容,原因是筆誤或者未經測試的寫法。
1、修改python.prf,修改python版本號,添加PYTHON_PATH,PYTHON_LIB,註意不能簡單設定路徑,還要改set 臨時環境變量為變量的用法,就是$$()變為$${},修改前後見下圖
2、修改PythonQt.prf,修改被拼錯的路徑,改為DESTDIR(vs和qt creator生成中間文件的目錄不一致的,使用DESTDIR就一致了),如下圖:
3、修改PythonQt_QtAll.prf,修改拼寫錯誤,如下圖所示:
4、修改PythonQt3.2\src\src.pro
5、修改\PythonQt3.2\extensions\PythonQt_QtAll.pro
開始編譯:
方法1、使用VS編譯,右鍵管理員運行createSolution.bat,使用vs打開PythonQt.sln,註意因為Python是二進制安裝包,不是使用Qt編譯源碼來的,所以工程只能設置為Release,否則會提示Python_d.lib找不到。
編譯PythonQt-Qt5-Python37,生成PythonQt-Qt5-Python37.lib和PythonQt-Qt5-Python37.dll
編譯PythonQt_QtAll-Qt5-Python37,生成PythonQt_QtAll-Qt5-Python37.lib,PythonQt_QtAll-Qt5-Python37.dll
然後編譯整個工程都會成功
方法2、使用Qt creator(vs2015),編譯PythonQt.pro。
打開PythonQt.pro,註意工程要選擇Release
右鍵PythonQt,構建,需要註意與vs編譯不同的是,lib的生成目錄,會變為上級目錄的\build-PythonQt-Desktop_Qt_5_11_2_MSVC2015_32bit-Release\lib
OVER
參考資料/文獻:
PythonQt Building http://pythonqt.sourceforge.net/Building.html
PythonQt Introduction http://pythonqt.sourceforge.net/index.html
將Python嵌入到Qt程序中 https://my.oschina.net/u/2306127/blog/369663
編譯PythonQt的一點心得 https://blog.csdn.net/x18722498005/article/details/50975481
關於PythonQt3.1在Windows中的編譯 https://blog.csdn.net/wcs20wp/article/details/62216103#commentBox
PythonQt在windows下的編譯 https://www.cnblogs.com/zhangzhiming/p/5407644.html
編譯PythonQt的一點心得 https://blog.csdn.net/x18722498005/article/details/50975481
QT的pro文件編寫,高效簡潔,,路徑設置 有空格 引入系統環境變量 https://blog.csdn.net/zkl99999/article/details/61197930
PythonQT 3.2 build failing on Windows https://sourceforge.net/p/pythonqt/discussion/631393/thread/45d39c91/
PythonQt使用
在Qt(C++)中與Python混合編程 https://www.cnblogs.com/xia-weiwen/p/7932379.html
PythonQt試用手記 https://blog.csdn.net/jingwenlai_scut/article/details/5325448
PythonQt進階 http://www.cnblogs.com/zhangzhiming/p/5409284.html
C/C++使用Python API 方式與Python交互
C++調用Python淺析 https://blog.csdn.net/magictong/article/details/8947892
QT C++中直接調用python接口 https://blog.csdn.net/xiranchen/article/details/41843609
Qt與Python的混合編程相關配置以及問題說明 https://blog.csdn.net/chyuanrufeng/article/details/77753733
Qt中使用python--Hello Python! https://www.cnblogs.com/kaikai-king/p/7976339.html
QT中 使用c++調用 python http://www.cnblogs.com/shenghl/p/4442528.html
Qt+Python混合編程 https://blog.csdn.net/qq_29176963/article/details/82776575#_216
Windows下PythonQt編譯(vs2015+Qt5.11.2+PythonQt 3.2)