【发布时间】:2019-05-10 13:41:08
【问题描述】:
我尝试构建 Linux 内核,但遇到了一些编译错误。有谁知道我做错了什么以及如何解决? (或者,您还需要哪些额外信息?)
构建系统正在运行最新的 Fedora:4.19.6-300.fc29.x86_64 #1 SMP Sun Dec 2 17:33:14 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
目标系统是 Radxa Rock Pi 4
导出 ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
参考https://forum.radxa.com/t/building-debian-image-on-gcc8-systems/128/4
是的,Radxa 有一个论坛,我在那里交叉发帖,但我认为 Stack Overflow 在这方面有更广泛的经验。
编译错误如下:
arch/arm64/kernel/vdso.c:在函数“vdso_init”中: arch/arm64/kernel/vdso.c:119:6:警告:'memcmp' 读取 4 个字节 大小为 1 的区域 [-Wstringop-overflow=] 错误,禁止 警告:vdso.c:119 if (memcmp(&vdso_start, "\177ELF", 4)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[1]: *** [scripts/Makefile.build:277: arch/arm64/kernel/vdso.o] 错误 1
和
fs/exec.c:在函数“get_task_comm”中:fs/exec.c:1084:32:警告: “strncpy”调用中“sizeof”的参数与 资源;你的意思是使用目的地的大小吗? [-Wsizeof-pointer-memaccess] 错误,禁止警告:exec.c:1084
strncpy(buf, tsk->comm, sizeof(tsk->comm));
^
【问题讨论】:
标签: linux linux-kernel