12,967
回編集
編集の要約なし |
|||
289行目: | 289行目: | ||
make install-strip | make install-strip | ||
<br> | <br> | ||
==== ARM EABIHF (システムルートあり) ==== | |||
まず、[https://ftp.gnu.org/gnu/binutils/ GNUの公式Webサイト]から、Binutilsをダウンロードする。<br> | |||
ダウンロードしたファイルを解凍する。<br> | |||
tar xf binutils-<バージョン>.tar.xz | |||
cd binutils-<バージョン> | |||
<br> | |||
ビルドディレクトリを作成する。<br> | |||
mkdir build && cd build | |||
<br> | |||
クロスコンパイラ向けBinutilsのビルドおよびインストールする。<br> | |||
<u>インストールディレクトリは、クロスコンパイラ向けGCCのインストールディレクトリと同じディレクトリであることに注意する。</u><br> | |||
# Raspberry Pi Zero / 1 の場合 | |||
export ARCH=armv6 | |||
export FPU=vfp | |||
# Raspberry Pi 2 / 3B の場合 | |||
export ARCH=armv7-a # | |||
export FPU=neon-vfpv4 # | |||
# Raspberry Pi 3B+ の場合 | |||
export ARCH=armv8-a | |||
export FPU=neon-fp-armv8 | |||
../configure --prefix=<クロスコンパイラ向けGCCのインストールディレクトリ> | |||
--build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --target=arm-linux-gnueabihf \ | |||
--with-arch=$ARCH \ | |||
--with-fpu=$FPU \ | |||
--with-float=hard \ | |||
--disable-multilib \ | |||
--with-sysroot=<ターゲットのシステムルートディレクトリ> | |||
make -j $(nproc) | |||
make install | |||
<br> | |||
次に、[https://gcc.gnu.org GCCの公式Webサイト]にアクセスして、GCCのソースコードをダウンロードして解凍する。<br> | |||
または、以下のコマンドを実行してダウンロードする。<br> | |||
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-<バージョン>/gcc-<バージョン>.tar.xz | |||
tar xf gcc-<バージョン>.tar.xz | |||
cd gcc-<バージョン> | |||
<br> | |||
クロスコンパイラ向けGCCをビルドおよびインストールする。<br> | |||
# Raspberry Pi Zero / 1 の場合 | |||
export ARCH=armv6 | |||
export FPU=vfp | |||
# Raspberry Pi 2 / 3B の場合 | |||
export ARCH=armv7-a # | |||
export FPU=neon-vfpv4 # | |||
# Raspberry Pi 4B の場合 | |||
export ARCH=armv8-a | |||
export FPU=neon-fp-armv8 | |||
export PATH="/<上記でインストールしたBinutilsのインストールディレクトリ>/bin:$PATH" | |||
../configure --prefix=<クロスコンパイラ向けGCCのインストールディレクトリ> \ | |||
--build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --target=arm-linux-gnueabihf \ | |||
--enable-languages=c,c++ \ | |||
--with-arch=$ARCH \ | |||
--with-fpu=$FPU \ | |||
--with-float=hard \ | |||
--disable-multilib \ | |||
--with-sysroot=<ターゲットのシステムルートディレクトリ> | |||
make -j $(nproc) | |||
make install-strip | |||
<br> | |||
==== H8 (システムルート無し) ==== | ==== H8 (システムルート無し) ==== | ||
<u>※注意 1</u><br> | <u>※注意 1</u><br> |