解壓 Python-2.5.6.tgzhtml
進入 Pcbuild8 文件夾,使用 vs 2013 打開 pybuild.sln (vs 解決方案),進入 vs2015IDE 環境python
右鍵解決方案’pcbuild’ ⇒ 屬性git
通用屬性github
單啓動項目 ⇒ 選擇 pythonwindows
配置屬性ui
首先編譯 make_buildinfo 和 make_versioninfospa
分別右鍵 make_buildinfo/make_versioninfo ⇒ 僅用於項目 ⇒ 僅從新生成命令行
編譯此解決方案,最終會在開始的 PCbuild8\Win32Debug文件夾下生成 python_d.exe 和 python25_d.dll 文件,可雙擊 python_d.exe,進入 python 命令行環境。編譯中間應該有6個錯誤,解決方式以下,3d
timezone
這個宏再也不被vs2015支持,全部出現的地方都要替換爲_timezone
,剩下的幾個關於時間的編譯錯誤也是如此加個下劃線【_】就行了。錯誤都集中在 pythoncore下的timemodule裏 line:687附近,也有幾個其餘的報錯變量出現,位置也在這附近,處理方法一樣是前面加下劃線。項目的配置問題:主要是compiler編譯出的中間文件名和linker使用的文件名不匹配,參考以前的錯誤報告, 須要在配置裏設置
pythoncore
項目的輸出文件名爲$(PyDllName)_d
(右鍵pythoncore ⇒ 屬性
)。code
總體流程同編譯2.x版本,只是編譯時錯誤不同,
編譯解決方案時有可能會出錯: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
, 將第77行(3.6.5版本此處實際在77行後面一點),
<DefaultWindowsSDKVersion>10.0.15063.0</DefaultWindowsSDKVersion>
更改成,
<DefaultWindowsSDKVersion Condition="$(_RegistryVersion) == '10.0.15063'">10.0.15063.0</DefaultWindowsSDKVersion>
便可。