设为首页 加入收藏

TOP

准备进行Linux设备驱动的开发了
2014-11-23 23:31:46 来源: 作者: 【 】 浏览:7
Tags:准备 进行 Linux 设备驱动 开发

  首先是搭建开发环境,由于目标机是ARM2410,需要用到GCC,在Windows平台虽然有cygwin等工具可以模拟Linux环境,但是据说问题比较多,出了问题也不好解决,干脆还是直接转到Linux平台吧。


  然后就开始搭建交叉编译工具链了,因为之前在虚拟机上搭建过,所以还是采用一样的方法,通过crosstool这个工具来自动编译,这样就只需要选择好要编译的版本,下载好相应版本的glibc,gcc等等,再修改几个配置文件,然后运行demo_arm9tdmi.sh,就可以泡杯茶,等编译完成了。正常情况下大概要1个小时,前提是下载好相应的库,否则crosstool会自动用wget下载,速度相当慢。但是这次的编译就没有以前在虚拟机上那么顺利了,中途遇到好几次问题,比如环境变量设置有问题,目标目录没有创建的权限等等,还好这些问题根据错误提示来都很好解决,唯一的一个很奇怪的错误是关于gcc版本的,这个我在以前虚拟机上编译的时候从来没有遇到过。后来google了一下,终于发现是我装的fedora 9用的gcc版本太新了,于是在网上下载了一个gcc3.4.6来安装,重新编译。结果还是出错,根据程序的调试信息,发现在运行脚本的时候又自动改为选用本机原来的gcc了。最后找到出错的地方,将crosstool.sh里面CC=gcc改为CC=gcc34才解决问题。


  接下来该学习写makefile和编译移植内核了,毕竟现在才刚起步,要学习的东西还非常多。争取把遇到的问题和解决办法都写下来,一是怕自己忘记,二也可以帮助其他新手走弯路。Linux博大精深,需要大家共同学习才能进步的更快。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux学习笔记之内核基础和控制台 下一篇Linux下能不能替换运行中的程序

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: