本機環境:html
一、win7 64 旗艦版python
二、Qt 5.11.2(MSVC 2015,32 bit)git
三、到目前爲止,python官方2018-10-20更新,Python 3.6.7;github
一、下載合適的python版本,本機使用vs2015的Qt,因此選擇了vs2015支持的3.6版本的python,windows
python3.7----vs2017
python3.6----vs2015
須要知作別的python版本,須要使用哪一個VS編譯,下載源碼後,打開PCbuild/readme.text進行查看便可ui
二、解壓後到D盤,目錄結構spa
三、編譯。.net
進入PCbuild目錄,打開pcbuild.sln文件,右鍵python屬性,選擇你的編譯配置(Debug仍是Release,Win32仍是X64)debug
編譯解決方案時有可能會出錯:windows sdk version 10.0.15063 was not found,解決方案是根據Fix python 3.6 build failure with VS 2015 and WinSDK!=10.0.15063所說的方法,打開python.props, 將第79行,code
<DefaultWindowsSDKVersion>10.0.15063.0</DefaultWindowsSDKVersion>
更改成
<DefaultWindowsSDKVersion Condition="$(_RegistryVersion) == '10.0.15063'">10.0.15063.0</DefaultWindowsSDKVersion>
四、使用Release 32,Debug 32,編譯成功python工程後(只須要編譯Python這一個工程,其餘的能夠不編譯),Python-3.6.7\PCbuild\win32 內會有32位的debug和Release庫,目錄結構以下:
五、至此python3.6.6編譯成功
PYTHON_VERSION = 36 PYTHON_PATH = D:\Python-3.6.7\ PYTHON_LIB = D:\Python-3.6.7\PCbuild\win32
參考資料:
『Python』VS2015編譯源碼注意事項http://www.javashuo.com/article/p-pkkckjcm-kr.html
VS2015編譯python 3.6.4源碼https://blog.csdn.net/fitzzhang/article/details/79146107