1) 首先交叉编译器,我用crosstool-ng交叉编译工具,还比较顺利,事先查清楚板子上arm指令集,gcc 和
glibc的版本号就可以了,arm指令集可以到这里对照着查:http://en.wikipedia.org/wiki/ARM_architecture;
2) 然后编译内核,make ARCH=arm menuconfig,作一下简单配置,记得选上 wireless,接下来编译内核:make
ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- (记得export PATH
并指定刚刚编出来的交叉编译起)
如果编译过程中出现如下错误:
arm-9tdmi-linux-gnu-ld: no machine record defined
可能是 binutils 版本导致的,可以暂时注释 文件中下面两行:
ASSERT((__proc_info_end - __proc_info_begin), "missing CPU support")
ASSERT((__arch_info_end - __arch_info_begin), "no machine record defined")
3) 最后准备编译无线网卡驱动,由于我机器上的内核是2.6.36,而板子上的是2.6.29.4,所以采用如下方法编译:
make KLIB=/usr/src/linux-2.6.29.4 KLIB_BUILD=/usr/src/linux-2.6.29.4
没有评论:
发表评论