命令行标志未发现建筑物的OpenWrt的时候有这个问题
问题描述:
我':命令行标志未发现建筑物的OpenWrt的时候有这个问题
Command line marker not found!
make[5]: *** [kernel_prepare] Error 255
分析后,我发现问题来自tools/patch-image/src/patch-cmdline.c
:
for (p = ptr; p < (ptr + search_space); p += 4) {
if (memcmp(p, "CMDLINE:", 8) == 0) {
found = 1;
p += 8;
break;
}
}
if (!found) {
fprintf(stderr, "Command line marker not found!\n");
goto err3;
}
memset(p, 0, CMDLINE_MAX - 8);
strcpy(p, argv[2]);
msync(p, CMDLINE_MAX, MS_SYNC|MS_INVALIDATE);
ret = 0;
我有什么不解的是,patch-cmdline.c
尝试在tmp/vmlinux-alfa-nx
中找到属性CMDLINE
,并找到命令行中的“修补程序”。
问题:
-
什么是vmlinux的-α-NX的目的,它不是内核映像:
文件的vmlinux-α-NX 的vmlinux-α-NX:数据
,显的问题来自TMP/vmlinux的-α-NX,我如何改变它,这样它包含 “CMDLINE”
答
如果我正确理解你的问题,很可能你没有正确定义构建OpenWRT的目标。 CMDLINE
是一个保存用于加载内核的命令行的变量。
您可能想在OpenWRT论坛中阅读this documentation article或this post。