2009年1月7日水曜日

Firefox3 on Debian etch 1 of 2

今使っているDebian(etch)でFirefox3を使いたいが、現行ではGTKが2.8なので2.10以上を使え、と怒られる。
これでは埓が明かないので独自ビルドしてみることにする。

ライブラリの依存関係を良く知らないので怪しいが
  1. glib
  2. pango
  3. gtk+が依存するライブラリ
  4. gtk+
  5. firefox
という順番でビルドした。
gtk+やfirefox3自体は沢山のライブラリに依存していて
今回独自ビルドしたものでは足りないのだが、
そこはdebianが提供しているパッケージで済ませている。

...これは後になって気づいたことなのだが、gtk+までビルドが終わっていれば
firefox3のバイナリを落としてくるだけで使えるようである。
(LD_LIBRARY_PATHをビルドしたgtk+に通してあげるだけ)

基本的には依存関係の解決が出来ていれば問題無いようで、
makeで変にコケたのはgtk+だけ。

ダウンロード

ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/

からFirefox 3.0.5をダウンロード。

http://www.gtk.org/

からGTK一式をダウンロード。

gtk+-2.14.0
Pango-1.20.5
glib-2.18.3

gtk+のビルドに必要なatkとcairo, 画像ライブラリ(jpeg/tiff/png)は
GTKのサイトではなく配布元から取ってくる必要がある。
中途半端に置いておくのはやめてほしい...

http://ftp.gnome.org/pub/gnome/sources/atk/
http://cairographics.org/releases/
ftp://ftp.uu.net/graphics/jpeg
ftp://ftp.remotesensing.org/pub/libtiff

atk 1.25.2
cairo 1.8.6

cairoをビルドするのにpixmanも必要なので落としておくこと。
png用ライブラリはどこから落としたか忘れた...
firefoxをビルドするのに必要なlibIDLはGNOMEサイトから。

ftp://ftp.gnome.org/pub/GNOME/sources/libIDL

展開

ビルド用ディレクトリ($HOME/Garage/sourcesとしている)に上記のパッケージを展開

ビルド

glibのビルド

prefixに自分のビルド用HOME($HOME/Garage/home)を指定してビルド

pangoのビルド

インストールしたglibを指すようにしたあとでconfigure実行

export CPPFLAGS="-I<$HOME>/Garage/home/lib/glib-2.0/include"
export LDFLAGS="-L<$HOME>/Garage/home/lib"
export PKG_CONFIG_PATH="<$HOME>/Garage/home/lib/pkgconfig"
./configure --prefix=$HOME/Garage/home

次回はgtk+のビルド実施。

0 件のコメント: