MozTW 討論區 https://forum.moztw.org/ |
|
使用 MinGW 編譯 Firefox 心得分享 https://forum.moztw.org/viewtopic.php?f=18&t=25739 |
第 1 頁 (共 1 頁) |
發表人: | jaywang0.tw [ 2009-01-10, 20:22 ] |
文章主題 : | 使用 MinGW 編譯 Firefox 心得分享 |
在 Windows 系統裡,常用的 C++ 編譯器大概就是 Visual C++ 和 MinGW 了,但是手動修改與建構編譯環境真的很不易(我找了好久才找到可以在沒有最佳化情況下正常編譯 Firefox),因此,我用批次檔設計了一個全自動建構開發環境的程式,叫做 mozbuildtools ,可在 http://code.google.com/p/mozbuildtools/downloads/list 下載最新版本。 用 7-zip 或 winrar 解開後,盡量放在沒有空格及中文的路徑中,然後點兩下 setup.bat 檔案。批次檔會自動下載 MinGW 所需的建制工具。然後去下載 Firefox 和所需的 patch 。 目前只有最新的 3.2.x 在支援當中。您必須下載 Ver. 0.3 之 patch 才能正常使用。 http://mozbuildtools.googlecode.com/svn/trunk/patches/ 找到最接近 trunk 最新版本的 patch (成功機率高),然後再利用 hg 下載原始碼 > hg clone http://hg.mozilla.org/mozilla-central/ firefox-src 可能要等很久,請耐心稍等 進入 firefox-src 目錄 > cd firefox-src 使用 patch > patch -p1 < patchname.patch 用記事本建立一個檔案名叫 .mozconfig (務必在記事本程式內使用另存新檔功能儲存,請勿使用修改檔名的方式),可參考 README 內建議的 .mozconfig ,建議將 ac_add_options --enable-optimize="-O3 -march=prescott -freorder-blocks -fno-reorder-functions -msse3 -mmmx -mfpmath=sse -D_FORTIFY_SOURCE=2" 這一行改為 ac_add_options --disable-optimize ,不然編譯過程可能會發生錯誤,或是編譯出來的檔案不能執行。(預計下一版的 README 會改進) 然後還要記得執行 autoconf > autoconf-2.13 > cd nsprpub > autoconf-2.13 > cd .. 然後就可以編譯了 > make -f client.mk build 完成後就可在 .mozconfig MOZ_OBJDIR 指定的資料夾中的 dist/bin 找到執行檔。不過經過測試,有些 plugin 無法使用,像是 IETab 擴充元件中所附帶的 plugin 就無法使用,還有 Google toolbar 好像也無法使用。如果執行時會有錯誤訊息,可以另開個 profile (不管有沒有錯誤訊息,建議這麼做)或是以安全模式執行看看。 常見問題: 1. python 無法使用,顯示類似需要重新安裝軟體的訊息?可以嘗試自行下載 python 2.5.4 安裝,如果仍無法解決,可安裝舊版的 python 2.5.2 。記得調整 start-msys.bat 之環境變數。(之前我有遇過一次,不過自從更新到 Windows Vista 之後就沒遇過了,這裡是我之前的處理方法) |
第 1 頁 (共 1 頁) | 所有顯示的時間為 UTC + 8 小時 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |