📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

211行目: 211行目:
入れ替えたlibstdc++の対応関係を確認する。<br>
入れ替えたlibstdc++の対応関係を確認する。<br>
  strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
  strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
<br><br>
== GCC ARMのインストール ==
Cortex-A向けGNUツールチェインは、C/C++、アセンブリ言語のためのオープンソースのツール群である。<br>
これは、Cortex-Aファミリのプロセッサを対象としており、Arm Aプロファイルアーキテクチャを実装している。<br>
このツールチェーンにはGCCが含まれており、WindowsおよびLinux向けに無償で提供されている。<br>
<br>
[https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads ARMの公式Webサイト]から、ユーザの環境に合うバージョンをダウンロードする。<br>
GCC ARMを解凍して、適切なディレクトリに配置する。(ここでは、~/InstallSoftware/GCC_ARMディレクトリに配置している)<br>
<br>
以下の例では、GCC ARMを使用して、任意のソフトウェアをCortex-Aファミリ向けにビルドしている。<br>
# 32bit Cortex-A(Hard Float版)向けにビルドする場合
ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes \
../configure --prefix=<ソフトウェアのインストールディレクトリ> \
CC=/<GCC_ARMのインストールディレクトリ>/bin/arm-none-linux-gnueabihf-gcc \
CXX=/<GCC_ARMのインストールディレクトリ>/bin/arm-none-linux-gnueabihf-g++ \
--build=x86_64-unknown-linux-gnu --host=arm-none-linux-gnueabihf --target=arm-none-linux-gnueabihf \
--with-sysroot=/<GCC_ARMのインストールディレクトリ>/arm-none-linux-gnueabihf/libc --with-gnu-ld
make -j 8 LDFLAGS="-L/<GCC_ARMのインストールディレクトリ>/arm-none-linux-gnueabihf/lib" \
CFLAGS="-I/<GCC_ARMのインストールディレクトリ>/arm-none-linux-gnueabihf/include"
make install
<br>
# 64bit Cortex-A向けにビルドする場合
ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes \
../configure --prefix=<ソフトウェアのインストールディレクトリ> \
CC=/<GCC_ARMのインストールディレクトリ>/bin/aarch64-none-linux-gnu-gcc \
CXX=/<GCC_ARMのインストールディレクトリ>/bin/aarch64-none-linux-gnu-g++ \
--build=x86_64-unknown-linux-gnu --host=aarch64-none-linux-gnu --target=aarch64-none-linux-gnu \
--with-sysroot=/<GCC_ARMのインストールディレクトリ>/aarch64-none-linux-gnu/libc --with-gnu-ld
make -j 8 LDFLAGS="-L/<GCC_ARMのインストールディレクトリ>/aarch64-none-linux-gnu/lib64" \
CFLAGS="-I/<GCC_ARMのインストールディレクトリ>/aarch64-none-linux-gnu/include"
make install
<br><br>
<br><br>