写第一个驱动之前

  今天终于成功让第一个驱动跑起来了。前面没成功出现的问题主要有:

  0.第0个- -!!编译驱动时指定的内核版本要和开发板上的相同。

  1.驱动编译不成功,提示 cc1: error: invalid option `abi=aapcs-linux'

 其原因是编译内核的GCC版本和编译驱动的不同。

  2.驱动编译成功,加载成功,但执行测试程序时,提示:not't find test

 其原因是编译根文件系统Busybox的GCC版本和编译驱动的不同,导致制作根文件系统时,用的lib库与编译驱动时用的lib库不同,用用静态编译可以解决,如:

arm-linux-gcc test.c test.o -static,或重新制作根文件系统,换成相同的lib库。

  总的来说要避免出现各种意外问题,用相同版本的GCC编译内核,根文件系统,和驱动程序,并用相同版本的内核进行开发。另外,对于TQ2440开发板,由于提供的资料虽多但杂,在运用时要弄清开发环境,编译器版本等问题。

  问题有点小白- -!可是菜蛋我不知道。。。

 

 

posted @ 2012-12-21 22:05  永不指步  阅读(132)  评论(0编辑  收藏  举报