このウィキの読者になる
更新情報がメールで届きます。
このウィキの読者になる
カテゴリー
最近更新したページ
最新コメント
Menu
ここは自由に編集できるエリアです。

gba/クロスコンパイル環境の構築


binutils, gcc を自分でビルドする

各種ツールを自分でビルドして GBA のクロスコンパイル環境を構築します。

下記の書籍/ムックを参考にしています。

準備

※既にインストール済の場合は読み飛ばしてください。

Ubuntu には gcc や make などがプリインストールされていないので、
build-essential をインストールする。
$ sudo apt-get install build-essential

texinfo, bison, flex パッケージをインストールする。
$ sudo apt-get install texinfo
$ sudo apt-get install bison
$ sudo apt-get install flex

binutils


ARM 用 binutils をビルド/インストールする
$ wget ftp://ftp.gnu.org/gnu/binutils/binutils-2.18.tar.bz2
$ tar jxf binutils-2.18.tar.bz2
$ cd binutils-2.18
$ mkdir build_arm
$ cd build_arm
$ ../configure --prefix=/usr/local/gnu --program-suffix=-arm \
  --target=arm-gba-elf
$ make
$ sudo make install

i686 用 binutils をビルド/インストールする
$ mkdir build_686
$ cd build_686/
  ../configure --prefix=/usr/local/gnu
$ make
$ sudo make install

gcc-core


/usr/local/gnu/bin に PATH を通す
$ export PATH=/usr/local/gnu/bin:$PATH

ARM 用 GCC をビルド/インストールする
$ wget ftp://core.ring.gr.jp/pub/GNU/gcc/gcc-3.3.6/gcc-core-3.3.6.tar.bz2
$ tar jxf gcc-core-3.3.6.tar.bz2
$ ls
$ cd gcc-3.3.6/
$ ls
$ mkdir build_arm
$ cd build_arm/
$ ../configure --target=arm-gba-elf --prefix=/usr/local/gnu \
  --program-suffix=-arm --disable-shared --disable-threads --disable-nls
$ make
$ sudo make install

arm-gba-elf-gcc のシンボリックリンクを貼る
$ cd /usr/local/gnu/bin
$ sudo ln -s arm-gba-elf-gcc gcc-arm

i686 用 GCC をビルド/インストールする
$ wget ftp://core.ring.gr.jp/pub/GNU/gcc/gcc-3.3.6/gcc-core-3.3.6.tar.bz2
$ tar jxf gcc-core-3.3.6.tar.bz2
$ ls
$ cd gcc-3.3.6/
$ ls
$ mkdir build_arm
$ cd build_arm/
$ ../configure --target=arm-gba-elf --prefix=/usr/local/gnu \
  --program-suffix=-arm --disable-shared --disable-threads --disable-nls
$ make
$ sudo make install

クロスコンパイル環境が整ったかどうか確認する
$ which gcc
 /usr/local/gnu/bin/gcc
$ gcc -v
Reading specs from /usr/local/gnu/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/specs
Configured with: ../configure --prefix=/usr/local/gnu
Thread model: posix
gcc version 3.3.6

うまくいかないときは、環境変数 PATH の先頭に /usr/local/gnu/bin が入っているか確認する (シェルを一度抜けるとうまくいくかもしれない)
$ echo $PATH
/usr/local/gnu/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:
/bin:/usr/bin/X11:/usr/games


devkitPro を使う (よくわかんない人はこっち^^;)

有名な開発環境 devkitPro を使う方法もあります。

wwwproxy を設定する必要があるときは以下のようにセットする。
$ export http_proxy=http://your.wwwproxy:8080

ダウンロードと展開
$ wget http://jaist.dl.sourceforge.net/sourceforge/devkitpro/buildscripts-20060412.tar.bz2
$ mkdir /tmp/buildscripts
$ cd /tmp/buildscripts
$ tar jxf buildscripts-20060412.tar.bz2

ビルドとインストール(ビルドには結構時間がかかる)
$ ./build-devkit.sh
1: build devkitARM (gba gp32 ds)
2: build devkitPPC (gamecube)
3: build devkitPSP (PSP)
>> 1

1: I have already downloaded the source packages
2: Download the packages for me (requires wget)
>> 2

Please enter the directory where you would like 'devkitARM' to be installed:
for mingw/msys you must use <drive>:/<install path> or you will have include path problems
this is the top level directory for devkitpro, i.e. e:/devkitPro
>> /home/yourname/gba/devkitpro_r18
2007年12月05日(水) 01:32:24 Modified by hal_emmerich




スマートフォン版で見る