LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1953|回复: 10

rt73 无线网卡移植的问题

[复制链接]
发表于 2007-9-18 15:17:06 | 显示全部楼层 |阅读模式
我的主机是redhat 9.0 kernel 2.4.20

开发板是sbc2410x的 kernel 2.4.18-rmk7-pxal
arm-linux-gcc 2.95.3 3.3.2 3.4.1 都有

我用的是dwl-g122 rev C1的无线网卡
用的是rt73的驱动 ,为了验证rt73驱动没问题,我在自己的notebook上验证了 ,rt73在2.6.22内核上成功驱动起来

我在http://rt2x00.serialmonkey.com下在了
rt73-cvs-daily-tar.gz
然后用arm交叉编译,结果不行
后来用arm-linux-gcc 3.4.1 能编译生成rt73.o模块,但是我的内核是2.95.3编译生成的,所以不能加载模块

现在想用3.4.1编译2.4.18的内核,但是也编译不了,非得2.95.3才能编译。

想问问大家,有办法用3.4.1 交叉编译2.4.18内核或者,是能用2.95.3交叉编译生成rt73.o模块吗?

看了看论坛上有人用2.95.3编译生成了rt73.o模块,想问问大家是怎么弄的?
 楼主| 发表于 2007-9-20 11:13:13 | 显示全部楼层
好冷清啊,自己在顶一下试试
回复 支持 反对

使用道具 举报

发表于 2007-9-20 12:33:32 | 显示全部楼层
>>但是我的内核是2.95.3编译生成的,所以不能加载模块
说明内核已经编译成功了!

>>有办法用2.95.3 交叉编译2.4.18内核或者,是能用2.95.3交叉编译生成rt73.o模块吗?
所以这句是不是写错了!
是不是该改成“有办法用3.4.1交叉编译2.4.18内核或者,是能用2.95.3交叉编译生成rt73.o模块吗?”

你这一段描述的逻辑还真够复杂!

我基本明白你的意思,但这种问题你只能遇到一个解决一个了!到google上去搜吧!

还是提点建议:应以内核为重,如果用2.95.3编译内核可以正常运行的话,那就以2.95.3为基准了,然后去试图编译rt73(因为内核要比一个驱动复杂的多)!
至于编译一次通不过,那很正常!即使是uclinux自带的很多应用也不是一次就能编译通过的!所以根据编译输出的错误信息到google去搜才是一个有效的解决问题方法!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-9-21 08:15:49 | 显示全部楼层
谢谢netspectrum
我也google了很长时间了
几乎没有在2.4下面开发这个的
所以想上来问问大家到底2.4.18能不能驱动起来
回复 支持 反对

使用道具 举报

发表于 2007-9-21 08:53:59 | 显示全部楼层
楼主用 arm-linux-gcc 2.95 编译网卡驱动时有什么错误提示?一般来说不同版本的 gcc 支持的语法标准略有不同,但一般不是本质上的,往往把代码进行若干小的调整即可通过。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-9-21 09:24:32 | 显示全部楼层
谢谢remote fish
用2.95.3编译后出现下面的错误
  1. /usr/local/arm/2.95.3/bin/arm-linux-gcc -D__KERNEL__ -I/firendly-arm/kernel/include
  2. -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe
  3. -mstructure-size-boundary=8 -DMODULE -DMODVERSIONS -include
  4. /friendly-arm/kernel/include/linux/modversions.h -Wall -Wstrict-prototypes
  5. -Wno-trigraphs   -c -o rtmp_main.o rtmp_main.c
  6. In file included from rt_config.h:198,
  7.                  from rtmp_main.c:40:
  8. rtmp_type.h:78: parse error before `UINT16'
  9. rtmp_type.h:78: stray '\' in program
  10. rtmp_type.h:79: stray '\' in program
  11. rtmp_type.h:83: stray '\' in program
  12. rtmp_type.h:84: stray '\' in program
  13. rtmp_type.h:85: stray '\' in program
  14. rtmp_type.h:86: stray '\' in program
  15. rtmp_type.h:90: stray '\' in program
  16. rtmp_type.h:91: stray '\' in program
  17. rtmp_type.h:92: stray '\' in program
  18. rtmp_type.h:93: stray '\' in program
  19. rtmp_type.h:94: stray '\' in program
  20. rtmp_type.h:95: stray '\' in program
  21. rtmp_type.h:96: stray '\' in program
  22. rtmp_type.h:97: stray '\' in program
  23. rtmp_type.h:139: parse error before `}'
  24. rtmp_type.h:139: warning: type defaults to `int' in declaration of
  25. `RALINK_TIMER_STRUCT'
  26. rtmp_type.h:139: warning: type defaults to `int' in declaration of
  27. `PRALINK_TIMER_STRUCT'
  28. rtmp_type.h:139: warning: data definition has no type or storage class
  29. In file included from rt_config.h:199,
  30.                  from rtmp_main.c:40:
  31. rtmp_def.h:827: parse error before `{'
  32. rtmp_def.h:827: stray '\' in program
  33. rtmp_def.h:828: stray '\' in program
  34. rtmp_def.h:829: stray '\' in program
  35. rtmp_def.h:830: stray '\' in program
  36. rtmp_def.h:831: stray '\' in program
  37. rtmp_def.h:832: stray '\' in program
  38. rtmp_def.h:833: stray '\' in program
  39. rtmp_def.h:834: stray '\' in program
  40. rtmp_def.h:835: stray '\' in program
  41. rtmp_def.h:836: stray '\' in program
  42. rtmp_def.h:837: stray '\' in program
  43. rtmp_def.h:838: stray '\' in program
  44. rtmp_def.h:839: stray '\' in program
  45. rtmp_def.h:840: stray '\' in program
  46. rtmp_def.h:841: stray '\' in program
  47. rtmp_def.h:842: stray '\' in program
  48. rtmp_def.h:843: stray '\' in program
  49. rtmp_def.h:844: stray '\' in program
  50. rtmp_def.h:845: stray '\' in program
  51. rtmp_def.h:846: stray '\' in program
  52. rtmp_def.h:847: stray '\' in program
  53. rtmp_def.h:848: stray '\' in program
  54. rtmp_def.h:849: stray '\' in program
  55. rtmp_def.h:850: stray '\' in program
  56. rtmp_def.h:851: stray '\' in program
  57. rtmp_def.h:852: stray '\' in program
  58. rtmp_def.h:853: stray '\' in program
  59. rtmp_def.h:854: stray '\' in program
  60. rtmp_def.h:855: stray '\' in program
  61. rtmp_def.h:856: stray '\' in program
  62. rtmp_def.h:862: warning: This file contains more `}'s than `{'s.
  63. In file included from rt_config.h:201,
  64.                  from rtmp_main.c:40:
  65. mlme.h:406: parse error before `RALINK_TIMER_STRUCT'
  66. mlme.h:406: warning: no semicolon at end of struct or union
  67. mlme.h:407: warning: type defaults to `int' in declaration of `AuthTimer'
  68. mlme.h:407: warning: data definition has no type or storage class
  69. mlme.h:408: parse error before `AssocTimer'
  70. mlme.h:408: warning: type defaults to `int' in declaration of `AssocTimer'
  71. mlme.h:408: warning: type defaults to `int' in declaration of `ReassocTimer'
  72. mlme.h:408: warning: type defaults to `int' in declaration of `DisassocTimer'
  73. mlme.h:408: warning: data definition has no type or storage class
  74. mlme.h:409: parse error before `}'
  75. mlme.h:409: warning: type defaults to `int' in declaration of `MLME_AUX'
  76. mlme.h:409: warning: type defaults to `int' in declaration of `PMLME_AUX'
  77. mlme.h:409: warning: data definition has no type or storage class
  78. In file included from rt_config.h:204,
  79.                  from rtmp_main.c:40:
  80. rtmp.h:150: parse error before `{'
复制代码
回复 支持 反对

使用道具 举报

发表于 2007-9-21 09:40:46 | 显示全部楼层
你应该直接将错误信息“stray '\' in program”放到google上去搜!了解一下这种错误出现的原因,然后在根据你的实际情况进行微调了!

而不是去研究有没有别人也是做这个的!要知道这种几率是很小的!
即使别人跟你做的不一样,但遇到过相同或相似的错误,你也是可以从中汲取到一些经验的!

我用上述错误信息随便google一下,有不少结果显示!你就一篇篇的看吧,总能找到一些突破的!祝好运!
回复 支持 反对

使用道具 举报

发表于 2007-9-21 09:40:46 | 显示全部楼层
网速满,发重了!
回复 支持 反对

使用道具 举报

发表于 2007-9-21 09:41:26 | 显示全部楼层
网速满,发重了!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-9-21 10:00:41 | 显示全部楼层
谢谢你netspectrum,想加你 ,可以吗?
呵呵
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表