Build 32-bit FX on 64-bit Linux


由於官方版firefox 3.6在x86_64下編譯會有問題(tracemonkey,jemalloc…)
造成編譯出的fx不能執行,所以參考官方文件寫下這篇介紹

簡單的說關鍵就在用32bit模式進行編譯

CC=’gcc -m32
CXX=’g++ -m32

然後指定使用32bit的lib (x-libraries前面是兩個減號)

export LD_LIBRARY_PATH=/usr/lib32
ac_add_options x-libraries=/usr/lib32

另外再加上其他一些東西 (target=i686-pc-linux前面也是兩個減號)

export PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig:/usr/share/pkgconfig
export CROSS_COMPILE=1
ac_add_options target=i686-pc-linux
然後編譯過程中可能會出現怪怪的錯誤,這時候就要靠自己想辦法解決
export CPPFLAGS=’-I/usr/include/freetype2′
ac_add_options disable-gnomevfs
上面這兩個是我編譯時碰到的問題 (disable-gnomevfs前面還是兩個減號)
freetype2路徑錯誤(這部份請參考google),跟enable gnomevfs 就編譯不能(disable他吧)
另外也由於FX 3.6 使用O3下去編譯會有問題,所以只能退一步改成O2
就javascript 的速度而言,這樣編起來的FX速度跟windows ayakawa 版 很接近
比Linux官方版FX 快20%

發表留言