原本只是一直在 Windows 平台上編譯 Webkit,但做 layout test case 時,一直無法 success,一些文章說是字型的問題,但好不容易都取到字型了,還是不太 ok ,就開始嘗試在其他平台上測試。
編譯成功的平台:
- Windows 7 Eng 64Bit 與 VS 2005 Express
- AMD 955 X4、12GB DDR3-1333
- 耗時 45 分鐘
- Windows XP 32Bit 與 VS 2005 Express
- Windows XP 32Bit 與 VS 2005
- Ubuntu 11.04 64Bit 之編譯 GTK+ 版
- 躲在一台 AMD 945 X4、8GB 的 Win7 64Bit 裡的 VirtualBox ,分配 4 顆 CPU 和 2048 記憶體
- 耗時 22 分鐘
- Mac OSX 10.6 與 Xcode 4
- Mac mini 2009 Spec、2GB 記憶體
- 耗時 1小時 20 分鐘
整體上,編譯環境最容易設定的是 Mac OSX,但下載軟體還滿耗時:
- 下載安裝 Java for Mac OS X Developer Package (1xx MB) 和 Xcode 4 (4.x GB)
- 取得 Webkit source code
- 執行 update-webkit
- 執行 build-webkit
第二好裝的是 Ubuntu 11.04 ,原先想說再 Ubuntu 10.04 裝,才發現 GLIB 版本不夠新,也才想起幾天前朋友安裝時,就有提過這種問題,不小心又走了回頭路一次:
- 安裝 Ubuntu 11.04 Desktop 64Bit
- sudo apt-get install autoconf automake autotools-dev bison flex gperf glib-networking gtk-doc-tools libenchant-dev libgail-3-dev libgeoclue-dev libglib2.0-dev libgstreamer-plugins-base0.10-dev libgtk2.0-dev libicu-dev libjpeg62-dev libpango1.0-dev libpng12-dev libsoup2.4-dev libsqlite3-dev libtool libxslt-dev libxt-dev
- 編譯時又發現找不到 gail (明明裝了 libgail-3-dev 了),因此又多裝 libgail-dev 來搞定
- 取得 Webkit source code
- 執行 update-webkit --gtk
- 執行 build-webkit --gtk
至於 Win7 或 WinXP 的嘛,大概就照官網的安裝下去及調教,簡易筆記:
- vcsetup.exe
- VS80sp1-KB926748-X86-INTL.exe
- VS80sp1-KB971090-X86-INTL.exe
- PSDK-x86.exe
- cygwin-downloader.zip
- quicktimesdk.zip
- DXSDK_Feb10_exe
- 設定 VS 2005 Express 額外的 lib 或 header、設定系統環境變數以便找到 PSK 程式、設定 VCProjects 等
如果是在 WinXP 編譯時,應該還會碰到不少問題,細節請參考 Building Webkit on Windows。
最後,提及一下關於 run-webkit-tests:
- 新版指令: new-run-webkit-tests
- 舊版指令: old-run-webkit-tests 或 run-webkit-tests
只測試某些 case ,如 writing-mode:
- run-webkit-tests -v fast/writing-mode/
想看瀏覽器的圖(Pixel不見得會過):
- run-webkit-tests -v -p fast/writing-mode/
當使用舊版指令執行時,在 Windows 上會要求設定字型目錄(WEBKIT_TESTFONTS環境變數),用到的字型可以在這邊查閱:
https://trac.webkit.org/browser/trunk/Tools/DumpRenderTree/win/DumpRenderTree.cpp#L319
而這些字型大多是 Mac OSX 裏頭內建的,可以先把 /System/Library/Fonts 和 /Library/Fonts 的東西都複製到一個目錄,接著在 Windows 上使用 CrossFont 軟體(試用版15天免費)進行轉換即可,細節請參考 BuildingOnWindows#Font-metric-relatedfailures
關於跑 test case 的部分,若是在 Unix 環境可以試試 new-run-webkit-tests ,這跑起來比較快;在 Windows 上跑 new-run-webkit-tests 會碰到一些小問題,目前還沒著手去處理,暫時用舊版指令測試。
問題:WebKit/WebKitBuild/Release/bin/DumpRenderTree.exe: error while loading shared libraries: MSVCR80.dll: cannot open shared object file: No such file or directory
解法:請安裝 Safari 瀏覽器
沒有留言:
張貼留言