系統:win10
手頭有個python子產品,是用C寫的,想編譯安裝就需要讓python調用C編譯器。直接編譯發現使用的是vc9編譯,不支援C99标準(兩個槽點:為啥VS2008都還不支援C99?手頭這個C代碼為啥不好好寫?)
anyway,此時兩個想法,一個是改C源碼,另一個是自行用VS2013編譯一個python。事後證明第一個想法簡單容易。。第二個想法實際試過之後,感覺難度很大,水很深,最後也沒有淌出這渾水,簡單記錄下過程。
-
下載下傳python源碼,裝svn
解壓後進入D:\build\Python-2.7.12\PCbuild目錄
發現有個externals目錄裡面是空的。像ssl tk tcl sqlite等子產品都需要把C源碼放這裡的。手動放肯定是姿勢有問題的。看readme發現需要裝svn并添加到path,調用get_externals.bat會使用svn從python的repo上自動checkout下來這些external的源碼
-
編譯
輕按兩下打開PCbuild\pcbuild.sln
注意選擇x64 release模式
-
呃,這裡就各種問題了
比如nmake找不到,這需要手動添加到path再重開vs
再比如tcl.h等頭檔案找不到,怎麼會找不到呢,明明在externals目錄中好不好。需要手動添加
...
Greatness is never a given, it must be earned.