天天看點

VS2013編譯python源碼

系統:win10

手頭有個python子產品,是用C寫的,想編譯安裝就需要讓python調用C編譯器。直接編譯發現使用的是vc9編譯,不支援C99标準(兩個槽點:為啥VS2008都還不支援C99?手頭這個C代碼為啥不好好寫?)

anyway,此時兩個想法,一個是改C源碼,另一個是自行用VS2013編譯一個python。事後證明第一個想法簡單容易。。第二個想法實際試過之後,感覺難度很大,水很深,最後也沒有淌出這渾水,簡單記錄下過程。

  1. 下載下傳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的源碼

  2. 編譯

    輕按兩下打開PCbuild\pcbuild.sln

    注意選擇x64 release模式

  3. 呃,這裡就各種問題了

    比如nmake找不到,這需要手動添加到path再重開vs

    再比如tcl.h等頭檔案找不到,怎麼會找不到呢,明明在externals目錄中好不好。需要手動添加

    ...

Greatness is never a given, it must be earned.