2013-04-24

編譯firefox-kde-opensuse時將語系檔一併包進去

我原本編譯都是英文加上額外安裝中文語系,這樣升級後會造成一個困擾,語系檔不相容一開就當,還要先手動砍掉語系檔的資料夾,再次開啟又要抓新的語系檔,我想為編譯時為何不加上語系檔?

這想法說來簡單,但有點難度搞了二、三天才搞定,好幾次編譯到一半就當掉,最後得到的心得是,一、關掉Firefox,二、移除掉Firefox,三、不要加入--disable-pango,加上語系檔可能額外要修改過才行。四、記憶體小於2GB打包時會失敗,最好放在大於2GB的硬碟空間,而不要直接在/tmp、/dev/shm編譯。



好的,現在開始實作一樣是用Arch,先下載tarball解壓縮後進入資料夾,修改mozconfig(沒有PGO)或mozconfig-pgo(編譯加上PGO)。

找到# System libraries在其下插入
ac_add_options --with-l10n-base=..
mk_add_options MOZ_CO_LOCALE="zh-TW"
ac_add_options --enable-ui-locale=zh-TW

在開啟PKGBUILD

找到build() {
在其下插入
hg clone http://hg.mozilla.org/releases/l10n/mozilla-release/zh-TW zh-TW

找到md5sums=(
將第其下兩行改成'SKIP',修改後像這樣:
md5sums=('b822ff4b2348410587dec563235d9320'
'SKIP'
'SKIP'
這兩行是對映mozconfig mozconfig-pgo的md5sums當然你也可以在修改mozconfig先算出他的md5sum,修改後找到原本的md5sum後將其改成新的數值即可。
source=(https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/$pkgver/source/firefox-$pkgver.source.tar.bz2
mozconfig mozconfig-pgo



最後開啟終端機進入該資料夾,下編譯指令即可
makepkg -si

P.S編譯PGO
要開啟PGO只要將PKGBUILD_enable_pgo="n"改成_enable_pgo="y"即可,但編譯到一半如果停在http xxx 0404只要在開啟另一個終端機下指令將Xvfb程序砍掉,程序將會繼續編譯。
pkill Xvfb

P.S2這是我修改過的,我怕講的不清楚特別放上來讓你們參考