2015-11-04

Gecko cross build using docker

Firefox 4のリリースがされたらへんから10くらいにかけてコツコツとLinuxのクロスビルド環境の整備をしてた。その結果クロスビルド環境においては、DebianのMultiarch/HOWTOで書かれているやり方で環境構築できるようにしている。

FirefoxというかGeckoを組み込みで使いたいなんて話が仕事柄たまに来るんだけど、環境の作り方を説明するのが面倒すぎるし、自分で検証用にVMWareのクロス環境を持つのもバカバカしい (OSのアップグレードのたびにテストしてた) のでDockerを使ったコンテナに移行した。

https://hub.docker.com/r/wontfix/gecko-armhf-dev/ (armhf用)

dockerで以下のようにイメージを実行すれば、必要なライブラリは入っているので、mercurialでcloneするなりtarballを持ってきて、.mozconfigを書けばarmhfのビルドができる。
docker pull wontfix/gecko-armhf-dev
docker run -it wontfix/gecko-armhf-dev

Dockerfileを見ればわかるけど、クロス用のライブラリをインストールするとき (特にlibgtk2.0-dev)、--no-install-recommendsをつけないとライブラリがコンフリクトしてしまうものあるので、注意が必要みたい。(というかlibgtk2.0-devのパッケージングの際、RecommendにPythonが入ってるんだけど、それはおそらくPython:anyにすべきなんじゃないかなと)

0 件のコメント: