编译驱动
制作modules.cgz文件

编译驱动

由于img映像大小的要求1.44M所以编译驱动的时候,最好把软件的DEBUG信息去掉。 用下面命令代替通常的 make 就可以了:

make CONFIG_DEBUG_INFO=""

制作modules.cgz文件

这是一个先用cpio打包目录再用gzip压缩的文件,通常制作过程如下:

1 创建一个临时目录

   mkdir -v /tmp/modules
   cd /tmp/modules
   

2 建立与机器上 uname -r 命令输出匹配的目录,例如我制作2.6.9内核的驱动:

   for i in `ls /lib/modules/`;do \
   mkdir -pv $i/i686;\
   find /lib/modules/$i -name 'e1000e*' -type f |xargs -i cp {} $i/i686;\
   done
   

3 打包

   find | cpio -oH newc | gzip -9 > ../modules.cgz
   

4 创建一个img文件并挂载上(我使用rhel的一个img文件)

   mount gtes10.5sp1-e1000e.img /mnt/a -o loop
   root@dev3-168:/mnt/a# cat > tldd <<"EOF"
   > Intel(R) PRO/1000 Network Driver
   > EOF
   

5 修改其他文件 modinfo modules.dep pcitable 略...