2009年6月4日木曜日

Debian GNU/Linuxでクロスコンパイル環境を作る(mipsel)

1. aptitude install apt-cross
クロスコンパイル用ライブラリを簡単に作ってくれる

2. サポートしてるアーキテクチャは
dpkg-architecture -L
で確認できる。今回は mipsel

3. アップデート
apt-cross -a mipsel --update

4. gccに必要なライブラリをインストール
apt-cross -a mipsel --install gcc

5. クロスコンパイラの作成に必要なパッケージをインストール
apt-get build-dep binutils
apt-get build-dep gcc-4.3

6. apt-get source binutils
cd binutils-2.18.1
./configure --target=mipsel-linux-gnu --prefix=/usr/mipsel-linux-gnu
make
make install

export PATH=/usr/mipsel-linux-gnu/bin:$PATH

7. gcc
http://ftp.gnu.org/gnu/gcc/gcc-4.3.3/

cd gcc-4.3.3/
./configure --target=mipsel-linux-gnu --prefix=/usr/mipsel-linux-gnu \
--disable-nls --disable-shared --without-headers \
--with-newlib --enable-languages=c
make all-gcc install-gcc


X.
http://www.kernel.org/pub/linux/kernel/v2.6/
tar jxvf linux-2.6.27.24.tar.bz2
make ARCH=mips menuconfig
make ARCH=mips CROSS_COMPILE=mipsel-linux-gnu- vmlinux

qemu-system-mips で動かすなら Machine selection は Malta board を選択する
debian kernelなら Machine selection に qemu が選択できる(2.6.18)

Y. build result
linux-2.6.27 + gcc-4.3.3 + binutils-2.18.1 : ok
linux-2.6.18 + gcc-4.3.3 + binutils-2.18.1 : failed
linux-2.6.18 + gcc-4.3.1 + binutils-2.17.50 : failed

0 件のコメント: