Libre Computer AML-S905X-CC用のブートローダを再コンパイルしようとしています。GitリポジトリDebian 11 仮想マシンに記載されている指示に従ってください。 atf(Arm Trusted Firmware)をビルドしようとすると、ビルドでいくつかのエラーが発生します。そのビルド部分の出力は次のとおりです。
username@debian11:~/libretech-builder-simple$ PATH=/home/username/libretech-builder-simple/gcc/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-elf/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games CROSS_COMPILE=aarch64-elf- make -C atf -j1 PLAT=gxl DEBUG=0 bl31
make: Entering directory '/home/username/libretech-builder-simple/atf'
CC bl31/bl31_context_mgmt.c
/home/username/libretech-builder-simple/gcc/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-elf/bin/aarch64-elf-gcc: 1: cannot open @@: No such file
/home/username/libretech-builder-simple/gcc/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-elf/bin/aarch64-elf-gcc: 2: Syntax error: ")" unexpected
make: *** [Makefile:1469: /home/username/libretech-builder-simple/atf/build/gxl/release/bl31/bl31_context_mgmt.o] Error 2
make: Leaving directory '/home/username/libretech-builder-simple/atf'
このエラーメッセージは私にとって非常に理解しにくいようです。bl31/bl31_context_mgmt.c
どこにも「@@」は含まれていません。 @@何ですか?それはどこから出たの?
答え1
これはamd64(64ビットOS)用aarch-64-elf-gccを構築するツールチェーンのためです。一方、私はi386仮想マシン(32ビットOS)を使用しています。 64ビットOSに切り替えながら、このエラーを克服することができました。