1.準備MozillaBuild
在下面位址下載下傳最新的MozillaBuild
http://ftp.mozilla.org/pub/mozilla/libraries/win32/
推薦安裝到c:/mozilla-build,安裝到其他目錄也可
運作下面的指令,得到一個MinGW shell,下面的編譯都要在這個shell中運作
start-msvc6.bat
start-msvc71.bat (VS 2003)
start-msvc8.bat (VS 2005)
start-msvc9.bat (VS 2008)
注意firefox 3以後的版本不能用msvc6編譯
2.準備firefox源碼
firefox的源碼在
http://releases.mozilla.org/pub/mozilla.org/firefox/releases/
如果需要從Mercurial下載下傳最新的代碼,則需要通過start-msvc[x].bat進入MinGW shell,然後執行
hg clone http://hg.mozilla.org/mozilla-central/ firefox-src
如果需要簽出其它版本的代碼可以參考這裡
https://developer.mozilla.org/En/Developer_Guide/Source_Code/Mercurial
3.以下都要在源碼目錄裡操作
建立配置檔案.mozconfig ,注意檔案前面的".",最好在MozillaBuild的shell中touch一個,我沒在windows上建
成這樣的檔案。在源碼目錄裡建一個名字叫my-firfox的目錄用來存放編譯結果。
在源碼目錄下編寫.mozconfig檔案,
第一種編譯組合:
--------------------------------------------------------
#以下兩行表示編譯browser,即firefox
mk_add_options MOZ_CO_PROJECT=browser
ac_add_options --enable-application=browser
#最終編譯的結果放在這裡
mk_add_options [email protected]@/my-firefox
ac_add_options --disable-installer
#不編譯測試
ac_add_options --disable-tests
ac_add_options --disable-mochitest
#不使用vista sdk,實在懶的安裝這個
ac_add_options --with-windows-version=502
#debug/release
ac_add_options --disable-static --enable-shared
#如果不想調試改成--disable-debug即可
ac_add_options --disable-optimize --enable-debug
--------------------------------------------------------
第二種編譯組合:
因為我們在“.mozconfig”檔案裡面使用了debug模式,編譯出來的是一個debug模式下的名字叫做firefox.exe 的檔案,如果你是用它進行網絡連接配接的話,你會發現常常跳出錯誤視窗,這個是用來測試的(你需要每次點忽略才能繼續執行)。會十分的麻煩的,是以,你可以把 “ac_add_options --enable-debug”這一行去掉,免得麻煩。換上:“ac_add_options --disable-debug”,記住,這樣處理後能夠加快編譯的速度!加快速度的另外一個辦法是加上:“ac_add_options --disable-tests”,這樣就不會生成許多測試程式了。推薦的,編譯firefox時,最好的“.mozconfig”是這樣的:
--------------------------------------------------------
. $topsrcdir/browser/config/mozconfig
mk_add_options [email protected]@/my-firefox
ac_add_options --enable-optimize
ac_add_options --disable-debug
ac_add_options --disable-static
ac_add_options --enable-shared
ac_add_options --disable-tests
mk_add_options MOZ_CO_PROJECT=browser
--------------------------------------------------------
具體配置内容經常變化,可以參考
https://developer.mozilla.org/en/Configuring_Build_Options
4.make編譯
make -f client.mk build
時間很長,耐心等待....
5.編譯好了的檔案在 源碼目錄/my-firefox/dist/bin 目錄下,名字叫firefox.exe,如果選擇了
帶有--enable-optimize 和--enable-debug選項的第一種編譯組合你就可以用Microsoft Visual Studio
打開自己的mozilla firefox并能夠自己看着源代碼調試了,快去試試吧。
6. 如果你想編譯成一個安裝的版本,你可以删除:“ac_add_options --disable-installer”。
參考連結
https://developer.mozilla.org/En/Developer_Guide/Build_Instructions