2017-10-06 72 views
0

我':命令行標誌未發現建築物的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」

回答

0

如果我正確理解你的問題,很可能你沒有正確定義構建OpenWRT的目標。 CMDLINE是一個保存用於加載內核的命令行的變量。

您可能想在OpenWRT論壇中閱讀this documentation articlethis post