e1000网卡驱动编译遇到的问题[已解决]

发布于 2022-09-18 18:16:15 字数 994 浏览 9 评论 0

各位大牛,本人在内核相关的方面还是个初学者,遇到了一些问题,希望大家能帮我解决或者是给我一些参考

我买了个intel的千兆网卡,在我的系统(ubuntu 8.10, kenel 2.6.27.7)中可以自动识别,因为貌似e1000这个网卡驱动在内核中是有的。我还有一个内核,2.6.24.7,是我自己编译的,没有支持千兆网卡,也不能识别

但是我需要使用一个修改版的e1000驱动,按照文档中说法,我却无法编译成功。以下是错误提示

lili@linux:~/work/click/drivers/e1000-7.x/src$ make
make -C /lib/modules/2.6.24.7-click/build SUBDIRS=/home/lili/work/click/drivers/e1000-7.x/src modules
make[1]: 正在进入目录 `/usr/src/linux-2.6.24.7'
scripts/Makefile.build:46: *** CFLAGS was changed in "/home/lili/work/click/drivers/e1000-7.x/src/Makefile". Fix it to use EXTRA_CFLAGS。 停止。
make[1]: *** [_module_/home/lili/work/click/drivers/e1000-7.x/src] 错误 2
make[1]:正在离开目录 `/usr/src/linux-2.6.24.7'
make: *** [default] 错误 2

在两个内核中都是同样的错误

按照网上的一些说法,把Makefile文件中的CFLAGS替换为EXTRA_CFLAGS后,会出现很多个语法错误

请问,如何解决呢

解决方法:
换个版本更新的驱动,我自己汗死

[ 本帖最后由 txdgtwpv 于 2009-4-20 11:07 编辑 ]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

不知在何时 2022-09-25 18:16:15

make -f ./Makefile
什么错误

晨曦慕雪 2022-09-25 18:16:15
  1. [root@localhost net]# find /opt/linux-2.6/drivers/net/ -name "*e1000*"
  2. /opt/linux-2.6/drivers/net/e1000e
  3. /opt/linux-2.6/drivers/net/e1000e/e1000.h
  4. /opt/linux-2.6/drivers/net/e1000
  5. /opt/linux-2.6/drivers/net/e1000/e1000_main.c
  6. /opt/linux-2.6/drivers/net/e1000/e1000_hw.c
  7. /opt/linux-2.6/drivers/net/e1000/e1000_param.c
  8. /opt/linux-2.6/drivers/net/e1000/e1000.h
  9. /opt/linux-2.6/drivers/net/e1000/e1000_osdep.h
  10. /opt/linux-2.6/drivers/net/e1000/e1000_ethtool.c
  11. /opt/linux-2.6/drivers/net/e1000/e1000_hw.h
  12. /opt/linux-2.6/drivers/net/igb/e1000_phy.c
  13. /opt/linux-2.6/drivers/net/igb/e1000_mbx.h
  14. /opt/linux-2.6/drivers/net/igb/e1000_nvm.c
  15. /opt/linux-2.6/drivers/net/igb/e1000_nvm.h
  16. /opt/linux-2.6/drivers/net/igb/e1000_phy.h
  17. /opt/linux-2.6/drivers/net/igb/e1000_mbx.c
  18. /opt/linux-2.6/drivers/net/igb/e1000_hw.h
  19. /opt/linux-2.6/drivers/net/igb/e1000_defines.h
  20. /opt/linux-2.6/drivers/net/igb/e1000_mac.h
  21. /opt/linux-2.6/drivers/net/igb/e1000_mac.c
  22. /opt/linux-2.6/drivers/net/igb/e1000_regs.h
  23. /opt/linux-2.6/drivers/net/igb/e1000_82575.h
  24. /opt/linux-2.6/drivers/net/igb/e1000_82575.c
  25. [root@localhost net]#

复制代码

内心荒芜 2022-09-25 18:16:15

将 Makefile 中的 CFLAGS 改为 EXTRA_CFLAGS

〃温暖了心ぐ 2022-09-25 18:16:15

删掉kernel source code中的scripts/Makefile.build文件中的这几行,就ok了
# If the save-* variables changed error out
ifeq ($(KBUILD_NOPEDANTIC),)
        ifneq ("$(save-cflags)","$(CFLAGS)")
                $(error CFLAGS was changed in "$(kbuild-file)". Fix it to use EXTRA_CFLAGS)
        endif
endif

月朦胧 2022-09-25 18:16:15

gcc的版本是多少

自由如风 2022-09-25 18:16:15

谢谢前面的几位大牛,在按照各位的方法查看错误的时候,突然发现我要编译的版本号太低了,内核已经支持不了了

暖树树初阳… 2022-09-25 18:16:15

原帖由 txdgtwpv 于 2009-4-20 11:06 发表
谢谢前面的几位大牛,在按照各位的方法查看错误的时候,突然发现我要编译的版本号太低了,内核已经支持不了了

恭喜。移植的时候首先要考虑版本匹配的问题

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文