隨筆之XP下編譯Webkit

來源:互聯網
上載者:User
終於下載並編譯完成Webkit了。我是在32位XP下做的。下面是手順======================= 1 前期工作  》1 安裝VStudio 2005,我的是中文專業版,記住安裝的時候盡量只安裝Visual C++,否則後面會痛苦至死。  》2 安裝SP1包,VS80sp1-KB926604-X86-CHS.exe。這個比裝VS時間還要長。如果第1步選擇全部安裝的話,這一步需要花費2-3個小時。如果第一步只裝VC的話        這一步大概就20分鐘 》3 安裝VS補丁,否則VS容易死掉。VS80sp1-KB947315-X86-CHS.exe。如果不裝該補丁的話,就得禁止intellisense功能,就是刪除       C:\Program Files\Microsoft Visual Studio 8\VC\vcpackages\feacp.dll庫,這個庫就是intellisense。或者改名吧。》4 安裝quicktimeSDK。從網上找,在Apple官網上下載,注意不要修改預設安裝路徑。》5 安裝DirectxSDK。從MS官方網上找。不過現在好像要檢查你的系統是不是正版。網上也有破解方法。》6 安裝safari win32瀏覽器。======================== 2  下載源碼》1 下載源碼tar包,1.8個G,http://nightly.webkit.org/files/WebKit-SVN-source.tar.bz2 不要用迅雷下,那樣會有問題。我直接用瀏覽器下的。》2 下載Webkit封裝好的cygwin包,http://svn.webkit.org/repository/webkit/trunk/Tools/CygwinDownloader/cygwin-downloader.zip  然後運行其中的cygwin-downloader.exe========================= 3 編譯源碼》1 用VS開啟源碼目錄/Source/WebKit/win/WebKit.vcproj/WebKit.sln。一共30個項目。》2 修改每個項目的debug配置/C++選項/常規/將警告視為錯誤  設為否》3 用文字編輯器開啟webkit源碼目錄\WebKitLibraries\win\tools\vsprops\common.vsprops檔案,將其中的/SAFESH替換成/SAFESEH:NO。這個和連結     以及安全有關。 注意,和VCProject的連結,編譯等屬性全從這個檔案夾中的vsprops繼承的,如果有需要的話,可以在這裡改屬性。在       VS中是改不了的》4 cygwin安裝完後會提供一個terminal,進入webkit的源碼目錄,首先執行Tools/Script/Update-WebKit指令碼。然後執行Tools/Script/Update-WebKit-Support-libs指令碼。這兩       個指令碼要下載一些依賴檔案到源碼目錄。注意必須在源碼根目錄下執行。因為編譯要求所下載的依賴檔案放在根目錄下。》5 添加一個系統內容變數,DXSDK_DIR 值為C:\DXSDK。為PATH變數添加cygwin的bin目錄》6 執行Tools/Script/build-webkit --debug,這個指令碼將編譯debug版的webkit》7 編譯完的產物在webkit源碼目錄/WebKitBuild\Debug下。包括lib.dll.exe等》8 編譯時間候可能報錯,例如winnt.h報錯,可上網查詢。主要原因是依賴標頭檔的位置順序不對(DirectSDK include位置不對),但是又不太好改,錯誤如下:     VS2005\VC\PlatformSDK\include\winnt.h(222) : error C2146: 語法錯誤 : 缺少“;”(在標識符“PVOID64”的前面)。解決辦法直接修改winnt.h,在出錯的地方添加下面這    行    #define POINTER_64 __ptr64》9 然後就編譯,大概就2K多個檔案,速度比較快。》10  編譯過程中,可能報找不到d3d9.lib,那麼就把directxSDK/Lib目錄中的檔案都拷貝到webkit源碼目錄\WebKitBuild\Debug\lib ============================ 4 運行測試》1 運行WebKitBuild\Debug\bin\MiniBrowser.exe,可能會報缺CFNetwork.dll等庫,這時需要把safari安裝的C:\Program Files\Common Files\Apple\Apple Application Support下的      DLL全部拷貝到webkit源碼目錄\WebKitBuild\Debug/bin下, 注意有些庫不要覆蓋了。如果問你是否覆蓋,全在否即可。》2 也可以在VS中調試Tools/minBrowser==========================至此,Webkit編譯就算告一段落了。編譯中還有些檔案有點問題。需要手動改改,這些都比較簡單了。

相關資料見:

http://www.webkit.org/building/build.html

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.