1. 程式人生 > >Mac OS X 平臺上編譯WebCore 注意事項

Mac OS X 平臺上編譯WebCore 注意事項

首先,本人使用Mac機。

如果條件允許,還是用蘋果機編譯最舒服。

1、下載程式碼,還是推薦svn的,確保實時更新,也可以用git或者是直接下載tar包。

2、解壓後,放到 ~/WebKit目錄,這個任意

3、設定XCode,這時候就不要做別的工程了,設定XCode的編譯目標目錄,

    XCode -> Preferences -> Building

                其中的 Place Build Products in: 這個一定要選擇 Customized location 專案,

                假設放在  ~/WebKitBuild 目錄

4、設定整個XCode使用的文字換行屬性(這個是為了編譯WebCore時處理 .gperf檔案的)必須檢查

    XCode -> Preferences -> Text Eiditing

                 其中的 Line Endings: 這個含有兩個選項,全部選擇為 Unix (LF) 因為 WebCore當中的兩個 gperf 檔案都是這種,

                   (GPerf實現的有些問題,/n 這個古老的換行問題)

5、開啟專案,編譯

     首先 WebKit/ 目錄中的 ANGEL 開啟編譯

                                      JavaScriptCore 開啟編譯

                                      JavaScriptGlue 開啟編譯

                                      WebCore 開啟編譯,可以先進行 Derived Source 這個Target的編譯,如果不出錯,那麼進行 WebCore編譯

                                                  (時間比較長,依賴於機器效能 2.4G CPU, 4G Memory 1小時)

6、編譯WebKit

     開啟WebKit工程,注意設定換行符(這次是針對.exp檔案,需要進行 sed 命令,同樣是 /n的問題)

     增加 Frameworks ,將 WebKitLibraries 目錄中的 Interface 相應平臺上的庫連線進來。

     之後進行編譯,如果是 64位,那麼就會處理  WebKit/WebKit/mac/WebKit.exp 檔案,這個確認好是Unix換行符(0x0A),之後就沒什麼問題,等待連結成功即可

7、WebCore中增加類

    使用XCode增加相應的類到工程中,注意的是,.cpp檔案在進行 include .h檔案時,最上面要加入 #include "config.h" 標頭檔案,這樣才能夠保證,所有的巨集可用。