Armadilloフォーラム

Linuxカーネルビルドエラー

ct

2020年12月1日 10時51分

ドキュメント「armadillo-640_product_manual_ja-1.15.0.pdf」の10章を参考にカーネルをビルドしてます。
下記のエラーが出てしまうのですが何か手順足りないでしょうか?

atmark@atde7:~/work/linux-v4.14-at27$ 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:1097: ターゲット 'prepare0' のレシピで失敗しました
make: *** [prepare0] エラー 2

コメント

ct

2020年12月1日 10時51分

> ドキュメント「armadillo-640_product_manual_ja-1.15.0.pdf」の10章を参考にカーネルをビルドしてます。
> 下記のエラーが出てしまうのですが何か手順足りないでしょうか?
>
> atmark@atde7:~/work/linux-v4.14-at27$ 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:1097: ターゲット 'prepare0' のレシピで失敗しました
> make: *** [prepare0] エラー 2
>

at_akihito.irie

2020年12月1日 11時01分

入江です。

> atmark@atde7:~/work/linux-v4.14-at27$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-LOADADDR=0x82000000 uImage
"arm-linux-gnueabihf-" と "LOADADDR=" の間にはスペースが必要です。

atmark@atde7:~/work/linux-v4.14-at27$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage

としてお試しいただけますでしょうか。

ct

2020年12月1日 11時06分

試してみたところ別のエラーが発生しました。
こちらはどうすればいいでしょうか?

atmark@atde7:~/work/linux-v4.14-at27$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CC kernel/bounds.s
CHK include/generated/bounds.h
UPD include/generated/bounds.h
CHK include/generated/timeconst.h
UPD include/generated/timeconst.h
CC arch/arm/kernel/asm-offsets.s
CHK include/generated/asm-offsets.h
UPD include/generated/asm-offsets.h
CALL scripts/checksyscalls.sh
HOSTCC scripts/dtc/dtc.o
HOSTCC scripts/dtc/flattree.o
HOSTCC scripts/dtc/fstree.o
HOSTCC scripts/dtc/data.o
HOSTCC scripts/dtc/livetree.o
HOSTCC scripts/dtc/treesource.o
HOSTCC scripts/dtc/srcpos.o
HOSTCC scripts/dtc/checks.o
HOSTCC scripts/dtc/util.o
SHIPPED scripts/dtc/dtc-lexer.lex.c
SHIPPED scripts/dtc/dtc-parser.tab.h
HOSTCC scripts/dtc/dtc-lexer.lex.o
SHIPPED scripts/dtc/dtc-parser.tab.c
HOSTCC scripts/dtc/dtc-parser.tab.o
HOSTLD scripts/dtc/dtc
CC scripts/mod/empty.o
HOSTCC scripts/mod/mk_elfconfig
MKELF scripts/mod/elfconfig.h
HOSTCC scripts/mod/modpost.o
CC scripts/mod/devicetable-offsets.s
CHK scripts/mod/devicetable-offsets.h
UPD scripts/mod/devicetable-offsets.h
HOSTCC scripts/mod/file2alias.o
HOSTCC scripts/mod/sumversion.o
HOSTLD scripts/mod/modpost
HOSTCC scripts/kallsyms
HOSTCC scripts/pnmtologo
HOSTCC scripts/conmakehash
HOSTCC scripts/sortextable
CC init/main.o
CHK include/generated/compile.h
UPD include/generated/compile.h
CC init/version.o
CC init/do_mounts.o
CC init/do_mounts_initrd.o
AR init/mounts.o
CC init/initramfs.o
CC init/calibrate.o
CC init/init_task.o
AR init/built-in.o
HOSTCC usr/gen_init_cpio
./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:1053: ターゲット 'usr' のレシピで失敗しました
make: *** [usr] エラー 2

ct

2020年12月1日 11時47分

一応シンボリックリンクは追加しているつもりですが間違っていますか?

atmark@atde7:~/work/linux-v4.14-at27$ ln -s ../initramfs_a600-2.0.0.cpio.gz

atmark@atde7:~/work$ ls
initramfs_a600-2.0.0.cpio.gz u-boot-a600-v2018.03-at8
linux-v4.14-at27 u-boot-a600-v2018.03-at8.tar.gz
linux-v4.14-at27.tar.gz
atmark@atde7:~/work$ cd linux-v4.14-at27/
atmark@atde7:~/work/linux-v4.14-at27$ ls
COPYING Makefile drivers ipc scripts
CREDITS README firmware kernel security
Documentation arch fs lib sound
Kbuild block include mm tools
Kconfig certs init net usr
MAINTAINERS crypto initramfs_a600-2.0.0.cpio.gz samples virt

ct

2020年12月1日 11時52分

すみません。
シンボリックリンクですが、正常に作れていなかったようです。
下記を実行したところビルド開始しました。
少し様子みて問題ありそうであればご連絡します。

atmark@atde7:~/work/linux-v4.14-at27$ ln -s ../initramfs_a600-2.0.0.cpio.gz initramfs_a600.cpio.gz