在windows七、vs2013環境下編譯webkit,本人測試成功html
1、解壓cygwin到C盤下(建議放在C盤更目錄下,不然編譯期間會有部分文件找不到)c++
啓動命令:C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico -web
也能夠從Cygwin.bat啓動(若不是安裝在C盤,則啓動不了)windows
【注意】cygwin要用針對webkit的版本才行,這裏提供下載地址(綠色版):瀏覽器
http://pan.baidu.com/s/1bnb4kMzapp
2、安裝兩個SDK測試
DXSDK、quicktimesdk(webkit官方要求的)ui
3、安裝vs2013(建議用默認路徑)htm
安裝vs2013以前,建議先裝好ie10blog
4、安裝Safari瀏覽器,由於編譯完webkit運行時,須要用Safari的部分dll,目前暫不清楚用了哪些dll,若是沒有安裝,編譯的時候,會提示缺乏不少dll
5、下載webkit工程文件並作一些設置
a)、在http://nightly.webkit.org/ 下載webkit工程文件,30M左右
b)、下載一個補丁包,WebKit Support Libraries。這個壓縮包包含了Apple的幾個非開源庫的Windows port。下完後放在Webkit源碼解壓後的根目錄:~/WebKit-r95481/(注意這個補丁包不要解壓,build的時候腳本會本身搞定的)。
c)、設置五個環境變量
(1)WEBKIT_HOME:D:\WebKit-r164730
(2)WEBKIT_LIBRARIES :%WEBKIT_HOME%\WebKitLibraries\win
(3)WEBKIT_OUTPUTDIR:%WEBKIT_HOME%\WebKitBuild
(4)WEBKITLIBRARIESDIR:%WEBKIT_HOME%\WebKitLibraries\win
(5)WEBKITOUTPUTDIR:%WEBKIT_HOME%\WebKitBuild
d)、打開Cygwin,進入WebKit-r95481\Tools\Scripts文件夾運行三個腳本
(1) ./update-webkit
(2) ./ update-webkit-auxiliary-libs
(3) ./ update-webkit-support-libs
其中(2)是下載安裝WebKitAuxiliaryLibrary.zip,(3)是下載安裝WebKitSupportLibrary,這個很是重要,若是不運行這個的話,是沒法在VS中編譯的。除非運行過build-webkit,而這個命令會首先自動運行update-webkit-support-libs。
6、設置編譯選項:
a) 用VS打開WebKit/WebKit/win/WebKit.vcproj/WebKit.sln,選擇正確的Configuration,也就是Debug和Release,選擇Debug便可。
b) 選擇DumpRenderTree, QTMovieWin, WebCore, WebKit, WinLauncher等全部項目(把c++項目的屬性都設置一遍)的項目屬性,左側選擇「C/C++」,將右側的「Treat Warnings As Errors」(「將警告視爲錯誤」)設置爲「No」。這個必須設置。不然編譯時會報錯。
c) 右擊WinLauncher,選擇「設爲啓動項目」
7、修改兩個文件,在兩個圖片裏面:
(1)、這裏,webkit官方的LocalizedString.cpp文件出現出現字符錯誤
(2)、改這裏,是由於Safari瀏覽器的默認安裝路徑改變的緣由
8、按F7,能夠順利編譯完成。