Haiku では、コンパイラに gcc2、gcc4 またはその両方を使うことができます。歴史的な経緯で、Haiku の標準コンパイラは gcc2 ですが、今回は両方作成することとします。
まず、ビルドに必要なソフトウェアをインストールします。12.04 LTS では標準で zlib.h が入らないようなので注意ください。
haiku@haiku:~$ sudo apt-get install autoconf automake texinfo flex bison gawk build-essential yasm zlib1g-dev
ビルド前に、git branch を使って、作業用ブランチになっているか再確認します。
haiku@haiku:~/haiku/buildtools$ git branch
master
* mybuild
haiku@haiku:~/haiku/haiku$ git branch
master
* mybuild
作業用ディレクトリを作成します。名前は、"generated" で始まるものとしてください (標準の .gitignore に記載あり)。
haiku@haiku:~$ mkdir generated-gcc2 generated-gcc4
各作業用ディレクトリ でconfigre を実行してビルドツールを作成します。
# gcc2 クロスビルドツールの作成
haiku@haiku:~$ cd haiku/haiku/generated-gcc2
haiku@haiku:~/haiku/haiku/generated-gcc2$ ../configure --build-cross-tools ~/haiku/buildtools/ --include-gpl-addons --include-patented-code --use-gcc-pipe --alternative-gcc-output-dir ../generated-gcc4
# gcc4 クロスビルドツールの作成
haiku@haiku:~$ cd haiku/haiku/generated-gcc4
haiku@haiku:~/haiku/haiku/generated-gcc4$ ../configure --build-cross-tools-gcc4 x86 ~/haiku/buildtools/ -j2 --include-gpl-addons --include-patented-code --use-gcc-pipe --alternative-gcc-output-dir ../generated-gcc2
ビルドツールの configure オプションを以下に示します。個人的に使用する場合は問題ないと思いますが、使用用途によっては、--include-gpl-addons と --include-patented-code の使用は注意する必要があります。その他のオプションや詳細についてはソースを見てください。
オプション | 説明 |
---|---|
--build-cross-tools <build tools dir> | gcc2 クロスビルドツールを作成する。Haiku で、BeOS 用のアプリの一部を動かすことができます。 |
--build-cross-tools-gcc4 <arch> <build tools dir> | gcc4 クロスビルドツールを作成する。gcc4 でHaikuをビルドした場合、BeOS のアプリは実行できませんが、gcc2 より効率のよいバイナリとなります。また、移植中のWebkitなど、gcc4 でないとビルドできないものもあります。 arch には、"x86"、"x86_64"、"ppc"、"m68k"、"arm"、または "mipsel" を指定します。 |
-j<n> | gcc4 クロスビルドツールのビルド時に n ケまでの Job を 許可します (並行ビルド)。 |
--include-gpl-addons | GPL license の add-on もビルドします。 |
--include-patented-code | 特許で守られているコードを有効にします。 |
--use-gcc-pipe | gcc の -pipe オプションを使用します。 メモリをより多く使用しますが、ビルド時間が短縮されます。 |
--alternative-gcc-output-dir <dir> | gcc2/gcc4 ハイブリッドモードを作成の場合、サブコンパイラのある作業用ディレクトリを指定します。 |
クロスツール作成後、ビルドツールのリポジトリをコミットします。
haiku@haiku:~/haiku/buildtools$ git commit -a
参考:
- Configure Options (haiku-os.org)
- GCC Hybrids (haiku-os.org)
0 件のコメント:
コメントを投稿