Eclipse 搭建 Linux 内核驱动程序开发环境

1、开发工具 eclipse 、arm-linux-gcc交叉工具链、对应开发板的Linux 内核源码。

2、安装开发工具,并将内核源码包解压到指定路径中,并编译。 eg:/usr/local/arm/linux_E9_3.0.35_for_Linux

3、利用eclipse新建一个C Project,Empty Project。

然后一路默认next 到添加交叉编译器路径。

设置好之后点击完成。

4、工程建好之后,在其工程上右键properties---->C/C++ General--->Paths and Symbols.

5、在有右下角选择Export Settings.

导出路径自定义。

6、将编译好的内核中autoconf.h中的宏定义加入到Eclipse中步骤为:进入到我的内核generated目录中cd /usr/local/arm/linux_E9_3.0.35_for_Linux/include/generated

在此目录下执行命令:cat autoconf.h |grep define |awk ‘{print “<macro><name>” $2 “</name><value>” $3 “</value></macro>”}’ > symbol.xml 成功执行该命令后,在generated下会多一个symbol.xml文件。

7、将这个文件与之前导出的.xml文件打开

 

打开文件后在之前导出的文件中需要添加一行代码,在这两行之间(如果有两个则在下面的那个里面添加)

在<language name="C Source File">和 </language>之间添加命令:<macro><name>__KERNEL__</name><value>1</value></macro>

添加后在将打开的symbol.xml中的内容全部复制到之前添加的代码的下方。

在第一个<language name="C Source File">和 </language>之间添加命令:(该命令可根据实际修改)

<includepath>/usr/local/arm/linux_E9_3.0.35_for_Linux/include</includepath>

<includepath>/usr/local/arm/linux_E9_3.0.35_for_Linux/arch/arm/include</includepath>

<includepath>/usr/local/arm/linux_E9_3.0.35_for_Linux/arch/arm/mach-mx6</includepath>

<includepath>/usr/local/arm/linux_E9_3.0.35_for_Linux/arch/arm/plat-samsung/include</includepath>

保存退出。

8、在打开eclipse的那个位置将其导入。

9、在工程中添加C源文件。

先忽略编译器的警告信息。将工程属性中自动生成Makefile选项去掉

 10、在工程中添加Makefile源文件(注意名称一定为Makefile)

(makefile文件中不能随意敲入空格和TAB),Makefile中ARM版KDIR后跟随路径为ARM板中系统内核存放路径,若写x86_64版KDIR后面跟随的路径为当前电脑系统运行的内核路径: /lib/modules/3.10.0-514.16.1.el7.x86_64/build

11、因为工程中取消了自动生成makefile所以我们在工程下面新建Debug目录,并将.C文件和Makefile文件放到该目录中。

 12、保存编译

13、.ko 文件通过nfs下载到ARM测试

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值