重复的成员'page'错误的解决方法
 2016.02.29    |      Linux问题集合    |     AilsonJack    |     暂无评论    |     3322 views
By: Ailson Jack
Date: 2016-02-29
个人博客: http://www.only2fire.com/
<p style="text-indent: 2em;">在编译Linux-2.6.33内核时,出现的了一个错误就是:<span style="color: rgb(255, 0, 0);">重复的成员‘page’</span>,这个是由于gcc的版本较高造成的。之前编译Linux-2.6.33内核出现过的另一个问题,该问题在文章《<a href="http://www.only2fire.com/archives/44.html" target="_blank"><span style="color: rgb(255, 0, 0);">elf_i386或elf_x86_64:没有那个文件或目录 解决方法</span></a><span style="color: rgb(0, 0, 0);">》中进行了描述</span>,大家可以自行点击查看,如果遇到了也知道如何解决这个问题。<br/></p><p style="text-indent: 2em;">重复的成员‘page,编译出的详细错误信息如下:<br/><span style="color: rgb(255, 0, 0);">In file included from drivers/net/igbvf/ethtool.c:36:0:<br/>drivers/net/igbvf/igbvf.h: At top level:<br/>drivers/net/igbvf/igbvf.h:129:15: error: duplicate member ‘page’<br/>make[3]: *** [drivers/net/igbvf/ethtool.o] Error 1<br/>make[2]: *** [drivers/net/igbvf] Error 2<br/>make[1]: *** [drivers/net] Error 2<br/>make: *** [drivers] Error 2</span><br/></p><p style="text-indent: 2em;">我的编译出错信息,截图如下:</p><p style="text-align:center"><img src="/uploads/AilsonJack/2018.08.24/1535102132887503.png" onclick="preview_image(&#39;/uploads/AilsonJack/2018.08.24/1535102132887503.png&#39;)"/></p><p style="text-indent: 2em;">解决办法:</p><p class="artical_littlestyle1">1、方法一</p><p style="text-indent: 2em;">根据linux社区的建议,此错误是由于gcc版本与内核版本的冲突导致的。他们的建议是更换新版本的内核,但是某些特殊条件下,我们不能更换内核版本,于是我们修改内核代码适应当前的编译器(即接下来的方法二)。</p><p class="artical_littlestyle2">2、方法二</p><p style="text-indent: 2em;">a、按照错误的指示,错误的代码是在<span style="color: rgb(255, 0, 0);">drivers/net/igbvf/igbvf.h</span>文件的第129行。<br/></p><p style="text-indent: 2em;">b、打开文件,看129行,代码为:<span style="color: rgb(255, 0, 0);">struct page *page;</span>再往上看,第124行,也有<span style="color: rgb(255, 0, 0);">struct page *page;</span>这行代码,这个结构定义在内部的一个结构体中。就是他的名字与129行的重复了,而4.6.3的编译器不支持这种方式的定义,我们修改129行的代码为<span style="color: rgb(255, 0, 0);">struct page *pagep;</span>保存退出。<br/></p><p style="text-indent: 2em;">接下来重新编译,编译通过。<br/></p><p style="text-indent: 2em;">如果编译过程中,还遇到什么问题,大家可以在网上搜索或者给我留言吧。<br/></p>
欢迎关注博主的公众号呀,精彩内容随时掌握:
热情邀请仔细浏览下博客中的广告,万一有对自己有用或感兴趣的呢。◕ᴗ◕。。
如果这篇文章对你有帮助,记得点赞和关注博主就行了^_^,当然了能够赞赏博主,那就非常感谢啦!
注: 转载请注明出处,谢谢!^_^
转载请注明来源: 本文链接:  By: AilsonJack
重复的成员'page'错误的解决方法  |  说好一起走
暂无评论,要不要来个沙发
发表评论

 
Copyright © 2015~2023  说好一起走   保留所有权利   |  百度统计  蜀ICP备15004292号