【发布时间】:2014-03-26 13:45:47
【问题描述】:
我正在使用带有 3.11 内核的 Ubuntu Linux 12.04。
为了我的工作,我必须修补内核以使其能够实时运行。
于是我下载了带有补丁的Linux 2.6.31.6内核并尝试打补丁、编译和安装。
当我尝试编译它时,出现了这个错误:
CC arch/x86/vdso/vgetcpu.o
CC arch/x86/vdso/vvar.o
VDSO arch/x86/vdso/vdso.so.dbg
gcc: Error: elf_x86_64: File or directory not found
make[2]: *** [arch/x86/vdso/vdso.so.dbg] Error 1
make[1]: *** [arch/x86/vdso] Error 2
make: *** [arch/x86] Error 2
为了编译 RT 2.6... 内核,我使用与 3.11 相同的配置文件(当然还有一些编辑点),我查看了 /arch/x86/vdso 目录和 vdso.so.dbg 文件不见了(而且我不知道从哪里得到它)。
希望您能帮助我,如果您需要更多信息,我会尽力提供。
此致 阿德里安
【问题讨论】:
-
为什么要混合 2.6 和 3.11?这显然是在自找麻烦。
-
我的前任告诉我,即使它们是两个不同的版本,它也应该运行。但是,是的,一旦我尝试修补 3.11 内核,我就能够编译和安装它。感谢您的建议。
-
这两个内核有很多很多不同,即使在文件内容和位置方面也是如此。可能这就是你遇到的问题。
标签: c linux linux-kernel