「インストール - GCC」の版間の差分

ナビゲーションに移動 検索に移動
編集の要約なし
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>

案内メニュー