題名通りです./usr/sh-hitachi-elf ディレクトリ下にSuperH(SH)用の環境をインストールします.
GCCとBinutilsのコンパイルの際に,ビルド用のディレクトリをわざわざ作っていますが,これは必須です.やらないとコンパイルできません.
GMP,MPFR,MPCは多倍長浮動小数点用のライブラリです.今回gcc 4.7を使ったので最新版をインストールしておきます.
configureの際に--target=sh-hitachi-elfを--target=h8300-hms-elfすればH8用にもできます(そのときは/usr/h8300-hms-elfをインストール先にするとよい).
こちらのサイトを参考にさせて頂きました.というかほとんど変わらないです.
ディレクトリ構成
usr |---sh-hitachi-elf | |----bin <-ここにsh-hitachi-elf-gccとか | |----include <-ここに*.hとか | |----lib | |----libexec | |----sh-hitachi-elf | |----share |---src | |----binutils-2.22.tar.gz | |----newlib-1.20.0.tar.gz | |----gmp-5.0.5.tar.bz2 | |----mpfr-3.1.0.tar.gz | |----mpc-0.9.tar.gz | |----gcc-4.7.0.tar.gz | | | |----binutils-2.22 | |----newlib-1.20.0 | |----gmp-5.0.5 | |----mpfr-3.1.0 | |----mpc-0.9 | |----gcc-4.7.0 | | | |----gcc <-ビルド用ディレクトリ | |----binutils <-ビルド用ディレクトリ
ディレクトリの作成,ソースディレクトリへの移動
$ sudo mkdir /usr/sh-hitachi-elf $ cd /usr/src/
Binutilsのインストール
$ sudo wget http://ftp.gnu.org/gnu/binutils/binutils-2.22.tar.gz $ sudo tar zxvf binutils-2.22.tar.gz $ sudo mkdir binutils $ cd binutils $ sudo ../binutils-2.22/configure --prefix=/usr/sh-hitachi-elf/ --target=sh-hitachi-elf $ sudo make $ sudo make install $ cd ..
GMPのインストール
$ sudo wget ftp://ftp.gmplib.org/pub/gmp-5.0.5/gmp-5.0.5.tar.bz2 $ sudo tar zxvf gmp-5.0.5.tar.bz2 $ cd gmp-5.0.5 $ sudo ./configure --prefix=/usr/sh-hitachi-elf/ $ sudo make $ sudo make install $ cd ..
MPFRのインストール
$ sudo wget http://www.mpfr.org/mpfr-current/mpfr-3.1.0.tar.gz $ sudo tar zxvf mpfr-3.1.0.tar.gz $ cd mpfr-3.1.0/ $ sudo ./configure --prefix=/usr/sh-hitachi-elf/ --with-gmp-lib=/usr/sh-hitachi-elf/lib/ --with-gmp-include=/usr/sh-hitachi-elf/include/ $ sudo make $ sudo make install $ cd ..
MPCのインストール
$ sudo wget http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz $ sudo tar zxvf mpc-0.9.tar.gz $ cd mpc-0.9/ $ sudo ./configure --prefix=/usr/sh-hitachi-elf/ --with-mpfr-lib=/usr/sh-hitachi-elf/lib/ --with-mpfr-include=/usr/sh-hitachi-elf/include/ $ sudo make $ sudo make install $ cd ..
GCCのインストール
$ sudo wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.7.0/gcc-4.7.0.tar.gz $ sudo tar zxvf gcc-4.7.0.tar.gz $ sudo wget ftp://sources.redhat.com/pub/newlib/newlib-1.20.0.tar.gz $ sudo tar zxvf newlib-1.20.0.tar.gz $ sudo cp -r newlib-1.20.0/newlib/ gcc-4.7.0/ $ sudo cp -r newlib-1.20.0/libgloss/ gcc-4.7.0 $ sudo mkdir gcc $ cd gcc $ sudo ../gcc-4.7.0/configure --prefix=/usr/sh-hitachi-elf/ --target=sh-hitachi-elf --with-gmp-lib=/usr/sh-hitachi-elf/lib/ --with-gmp-include=/usr/sh-hitachi-elf/include/ --with-mpfr-lib=/usr/sh-hitachi-elf/lib/ --with-mpfr-include=/usr/sh-hitachi-elf/include/ --with-mpc-lib=/usr/sh-hitachi-elf/lib/ --with-mpc-include=/usr/sh-hitachi-elf/include/ --enable-languages=c,c++ --with-newlib --with-headers=newlib/libc/include/ $ sudo make $ sudo make install