2008-11-11 52 views
1

我正在定量研究與自動化測試相關的各種指標。 Chrome似乎有一個合理的設置,所以我想將它添加到我的數據集中。我下載了Chrome的源代碼,並試圖用VisualStudio來構建它,但有幾百個錯誤 - 類型未定義,標識符未定義等。有沒有人成功地在Windows下構建Chrome?我需要知道哪些技巧?有沒有人成功地在Windows下構建Chrome?

回答

4

從鉻dev的頁面:

編譯失敗

一些常見的事情要考慮,當你有奇怪的編譯錯誤:

  • 請確保您有SP1的Visual Studio 2005。這是需要。真。
  • 有時,Visual Studio在構建Chromium時遇到了錯誤的事情,並且陷入了一個虛假錯誤。一個很好的跡象就是,如果只有一個人失敗,其他人(包括Buildbots)不會抱怨。要解決此問題,請嘗試以下步驟:
    • 關閉Visual Studio。
    • 同步到樹尖並確保沒有衝突(「svn st」不應在您更改的文件前顯示任何「C」)。
    • 如果發生衝突,請在解決衝突後再次同步。使用命令行,您可以使用chrome目錄中的「erase/S/Q Debug Release」來執行此操作,或者使用「rm -rf Debug Release」命令來刪除輸出目錄(chrome \ Debug和chrome \ Release。如果你有類似Unix工具安裝。
    • 重新啓動Visual Studio並打開鉻溶液。
    • 重新生成解決方案。

如果仍然不起作用,重複此過程大概贏了't help。

點chrome_kjs.sln臨時文件的問題

如果同時建立JavaScriptCore的,你看到這樣的錯誤:

3>Error in tempfile() using /tmp/dftables-XXXXXXXX.in: Parent directory (/tmp/) is not writable 
3> at /cygdrive/c/b/slave/WEBKIT~1/build/webkit/third_party/JavaScriptCore/pcre/dftables line 236 
3>make: *** [chartables.c] Error 255 

...這是因爲包含在鉻源時遇到問題映射NT ACL到POSIX的Cygwin安裝權限。這似乎是在Chromium簽出到Cygwin無法找到權限的目錄中時發生的,可能是在運行mkpasswd之前從Cygwin環境內創建目錄。 Cygwin然後強加自己的訪問控制,這是不正確的限制。作爲一種變通方法,請執行下列操作之一:

  • 編輯在THIRD_PARTY \ Cygwin的\ tmp目錄的NT權限,允許修改和寫入每個人與機器\用戶操作。 Cygwin能夠弄清楚這一點。或者,

  • 找出結帳時出了什麼問題,然後再試一次 - 嘗試從cmd而不是從Cygwin shell執行結帳,然後驗證您的Cygwin安裝中的權限不是完全空白。或者,

  • 通過編輯webkit \ build \ JavaScriptCore \ prebuild.bat和webkit \ build \ WebCore \ prebuild.bat以在調用任何使用之前包含以下行來繞過Cygwin的訪問控制(NT仍將生效) Cygwin的:

    set CYGWIN=nontsec 
    

這些解決方案只有一個應該是必要的。

相關問題