1. 程式人生 > >Windows 7, Visual Studio 2012下編譯Webkit

Windows 7, Visual Studio 2012下編譯Webkit

解決方法 windows版本 同步 could 要求 windows 7 根目錄 vs2012 無法

因工作需要,需要編譯Windows版本的Webkit,中間走了不少彎路,都記錄下來,供大家參考!也隨時歡迎大家討論(QQ群:345802342)

整個編譯工作參考的是官方文檔:https://webkit.org/webkit-on-windows/

1. 主要的時間是下載代碼,不需要VPN,我晚上下載的,第二天就好了;這個步驟應該不會有什麽問題;

2. 文檔上要求的工具我除了下面四個沒裝,其他的都裝了:

  技術分享

3. WebKitAuxiliaryLibrary.zipWebKitSupportLibrary.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