Windows 7, Visual Studio 2012下編譯Webkit
因工作需要,需要編譯Windows版本的Webkit,中間走了不少彎路,都記錄下來,供大家參考!也隨時歡迎大家討論(QQ群:345802342)
整個編譯工作參考的是官方文檔:https://webkit.org/webkit-on-windows/
1. 主要的時間是下載代碼,不需要VPN,我晚上下載的,第二天就好了;這個步驟應該不會有什麽問題;
2. 文檔上要求的工具我除了下面四個沒裝,其他的都裝了:
3. WebKitAuxiliaryLibrary.zip和WebKitSupportLibrary.zip需要提前下載好,並放到源碼根目錄:
4. 之後運行perl update-webkit
5. 接下來是最重要,也是問題最多的環節:編譯!
a. 錯誤1:The C compiler "D:/xxxx/VC/bin/cl.exe" is not able to compile a simple test program;
解決方法:可能是因為本機裝了多個不同版本的VS的問題;
b. 錯誤2:no cmake_c_compiler could be found
解決方法:CMake沒有設置默認的編譯器,需要在CMake中設置;參見步驟6;
c. 錯誤3:cl.exe 應用程序無法正常啟動(0xc000007b)
解決方法:這個是CMake編譯的時候,有些文件沒找到會報錯,直接確認即可;參見步驟6;
d. 錯誤4:error MSB6006: "CL.exe" exited with code -1073741701.
解決方法:這個跟步驟4設置的宏(_IsNativeEnvironment=true)有關,因為系統默認以cmake編譯Webkit,而不是用VS編譯;需要設置為false,如下圖:
6. 在步驟5的錯誤中折騰了半天,也嘗試換電腦編譯,還是碰到各種問題;所以嘗試直接通過CMake配置編譯,竟然可以編譯成功!!!
a. 設置源碼和輸出目錄,直接替換自己的Webkit目錄即可,如下圖:
b. 配置VS版本,因為我有多個VS的版本,所以需要配置使用指定的版本,點擊上圖中的Configure,選擇你需要的版本即可,我的是VS2012:
c. 配置好之後,就可以直接編譯了,連續編譯兩次,就可以成功了,如圖a所示;
7. 至此webkit就編譯完成了,如果大家還遇到其他什麽問題,歡迎加群討論(QQ群:345802342)!
Windows 7, Visual Studio 2012下編譯Webkit