如何解决riscv64 Linux内核编译问题
我正在尝试使用以下链接为riscv64编译Linux内核-
https://risc-v-getting-started-guide.readthedocs.io/en/latest/linux-qemu.html
使用命令make ARCH = riscv CROSS_COMPILE = riscv64-unknown-linux-gnu- defconfig构建Linux时 出现以下错误- scripts / kconfig.include:35在PATH中找不到riscv64-unknown-linux-gnu-gcc编译器 scripts / kconfig / Makefile:82:目标“ defconfig”的配方失败
我已经包含了工具链的路径。还是行不通。随附了文件夹结构和错误的屏幕截图。
解决方法
我建议在make
命令中为您的工具链提供完整的前缀,例如:
wget https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64/tarballs/riscv64--glibc--bleeding-edge-2020.02-2.tar.bz2
mkdir -p /opt/bootlin
tar jxf riscv64--glibc--bleeding-edge-2020.02-2.tar.bz2 -C /opt/bootlin
make ARCH=riscv CROSS_COMPILE=/opt/bootlin/riscv64--glibc--bleeding-edge-2020.02-2/bin/riscv64-buildroot-linux-gnu- mrproper defconfig Image
编译应该正确无误-在此处使用linux 5.7.11:
HOSTCC scripts/basic/fixdep
HOSTCC scripts/kconfig/conf.o
HOSTCC scripts/kconfig/confdata.o
HOSTCC scripts/kconfig/expr.o
LEX scripts/kconfig/lexer.lex.c
YACC scripts/kconfig/parser.tab.[ch]
HOSTCC scripts/kconfig/lexer.lex.o
.../...
LD vmlinux.o
MODPOST vmlinux.o
MODINFO modules.builtin.modinfo
GEN modules.builtin
LD .tmp_vmlinux.kallsyms1
KSYM .tmp_vmlinux.kallsyms1.o
LD .tmp_vmlinux.kallsyms2
KSYM .tmp_vmlinux.kallsyms2.o
LD vmlinux
SYSMAP System.map
OBJCOPY arch/riscv/boot/Image
Kernel: arch/riscv/boot/Image is ready
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。