elf_i386或elf_x86_64:没有那个文件或目录 解决方法

      By:Ailson Jack

      Date:2016.02.29

      个人博客:www.only2fire.com

      本文在我博客的地址是:http://www.only2fire.com/archives/769.html,排版更好,便于学习。

      最近在编译Linux-2.6.33内核时出现错误,报出的错误的大致信息是:elf_i386或elf_x86_64:没有那个文件或目录,这里分享一下解决方法,方便遇到同样问题的朋友能够把问题解决。

      编译Linux-2.6.33内核,在make menuconfig配置完之后(选的默认配置),然后make,过一段时间出现如下错误:

gcc: 错误: elf_i386:No such file or directory

make[2]: *** [arch/x86/vdso/vdso32-int80.so.dbg] 错误 1

make[1]: *** [arch/x86/vdso] 错误 2

make: *** [sub-make] 错误 2

      我的编译结果如下图:

      原因是gcc 4.6不再支持linker-style架构(我使用的是gcc 4.6.3)。

下面是解决方法:

      确保当前路径是在内核目录中,然后执行命令:vim arch/x86/vdso/Makefile,在Makefile中搜索elf_x86_64,然后把”-m elf_x86_64” 替换为 “-m64“;接着在Makefile中搜索elf_i386,然后把”-m elf_i386” 替换为 “-m32“,保存退出,问题解决了。接着继续编译,就可以了。

      我在编译Linux-2.6.33内核时遇到的另一个问题是:重复的成员‘page’,链接:http://www.only2fire.com/archives/771.html,大家可以看看。

      如果编译过程中,还遇到什么问题,大家可以在网上搜索或者给我留言吧。

      注:转载请注明出处,谢谢!^_^

你可能感兴趣的:(linux,gcc,kernel,bug,Build)