====== クロス開発環境の構築 ====== Mac OS X上にNetWalkerのクロス開発環境を構築する。 基本的に[[http://d.hatena.ne.jp/n7shi/20091211|クロス開発環境構築(七誌の開発日記)]]をなぞるだけ。多謝多謝。 Mac OS X v10.6.6現在の情報。 ===== 準備 ===== 追加で必要なツールは以下の通り。 MacPortsで入れるのが簡単。 ^ 名前 ^ 使用バージョン ^ 備考 | |texinfo |4.13 | | |libgmp |5.0.1 | | |libmpc |0.8.2 | | |mpfr |3.0.0-p8 | | |xz |5.0.0 | | パスを通しておく。 MacPortsでインストールしたので/opt以下のパスを指定。 $ export CPPFLAGS=-I/opt/local/include $ export LDFLSGS=-L/opt/local/lib ===== クロスコンパイラのビルド ===== 新しい事は良いことだ!というわけで、2011-01-23現在で最新のgnu toolchainを使ってみる。 ==== binutils ==== /opt/local以下にインストールしたかったので、configureでprefixを指定している。 $ curl -O ftp://ftp.ring.gr.jp/pub/GNU/binutils/binutils-2.21.tar.bz2 $ tar xvjf binutils-2.21.tar.bz2 $ cd binutils-2.21 $ mkdir build $ cd build $ ../configure --prefix=/opt/local --target=arm-linux-gnueabi $ make $ sudo make install ==== NetWalkerクロス開発用のヘッダとライブラリ ==== [[http://d.hatena.ne.jp/n7shi/20091211|クロス開発環境構築(七誌の開発日記)]] から ubuntu-jaunty-araneo-armel-dev.tar.xz を頂戴する。 $ xz -dc ubuntu-jaunty-araneo-armel-dev.tar.xz | sudo tar xvf - -C /opt/local/arm-linux-gnueabi ==== gcc ==== GMP, MPFR, MPCのインストール先を明示的に指定してやらないとconfigureが通らなかった。 $ curl -O ftp://ftp.ring.gr.jp/pub/GNU/gcc/gcc-4.5.2/gcc-core-4.5.2.tar.bz2 $ curl -O ftp://ftp.ring.gr.jp/pub/GNU/gcc/gcc-4.5.2/gcc-g++-4.5.2.tar.bz2 $ curl -O ftp://ftp.ring.gr.jp/pub/GNU/gcc/gcc-4.5.2/gcc-objc-4.5.2.tar.bz2 $ tar xvjf gcc-core-4.5.2.tar.bz2 $ tar xvjf gcc-g++-4.5.2.tar.bz2 $ tar xvjf gcc-objc-4.5.2.tar.bz2 $ mkdir build $ cd build $ ../configure --prefix=/opt/local --target=arm-linux-gnueabi --with-gmp=/opt/local --with-mpfr=/opt/local --with-mpc=/opt/local $ make $ sudo make install ===== 参考サイト ===== [[http://d.hatena.ne.jp/n7shi/20091211|クロス開発環境構築(七誌の開発日記)]]