kdhiro
2021年4月30日 12時59分
Armadillo-640の製品マニュアルのP.100のビルドコマンドの実行の際に、
'usr'のレシピで失敗しましたと下記のようなメッセージが出ました。解決
方法を教えて頂きたくお願い致します。
root@atde7:/home/atmark/DT/linux-v4.14-at32# make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
scripts/kconfig/conf --silentoldconfig Kconfig
SYSHDR arch/arm/include/generated/uapi/asm/unistd-common.h
SYSHDR arch/arm/include/generated/uapi/asm/unistd-oabi.h
以降省略
↓
./scripts/gen_initramfs_list.sh: Cannot open 'initramfs_a600.cpio.gz'
usr/Makefile:60: ターゲット 'usr/initramfs_data.cpio.gz' のレシピで失敗しました
make[1]: *** [usr/initramfs_data.cpio.gz] エラー 1
Makefile:1054: ターゲット 'usr' のレシピで失敗しました
make: *** [usr] エラー 2
コメント
kdhiro
再度、マニュアルを確認し、実行したところ、エラーが下記のように変わりました。
root@atde7:/home/linux-v4.14-at32# make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-LOADADDR=0x82000000 uImage
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
CHK include/config/kernel.release
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
CHK include/generated/uapi/linux/version.h
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
CHK include/generated/utsrelease.h
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
CC kernel/bounds.s
/bin/sh: 1: arm-linux-gnueabihf-LOADADDR=0x82000000gcc: not found
Kbuild:21: ターゲット 'kernel/bounds.s' のレシピで失敗しました
make[1]: *** [kernel/bounds.s] エラー 127
Makefile:1098: ターゲット 'prepare0' のレシピで失敗しました
make: *** [prepare0] エラー 2
対応策を教えて頂きたく。お願い致します。
at_makoto.sato
佐藤です。
> 再度、マニュアルを確認し、実行したところ、エラーが下記のように変わりました。
>
> root@atde7:/home/linux-v4.14-at32# make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-LOADADDR=0x82000000 uImage
上記のコマンドですが、arm-linux-gnueabihf- と LOADADDR の間にスペースが必要です。
以下のように実行してください。
root@atde7:/home/linux-v4.14-at32# make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage
at_ohsawa
kdhiro
at_ohsawa
2021年4月30日 13時19分
> ./scripts/gen_initramfs_list.sh: Cannot open 'initramfs_a600.cpio.gz'
> usr/Makefile:60: ターゲット 'usr/initramfs_data.cpio.gz' のレシピで失敗しました
エラーにあるとおり、initramfs _a600.cpio.gzのシンボリックリンクを張っていないのか
シンボリックリンクの張る先を間違っているのか、張る先に実体のファイルが無い、make
を実行しているユーザーから、このファイルに対してアクセスする権限が無い、のどれかだと思います。
製品マニュアルの「10.2.1. 手順:Linuxカーネルをビルド」の2を改めて確認してください。
https://manual.atmark-techno.com/armadillo-640/armadillo-640_product_ma…