使用eclipse开发linux驱动

Eclipse具有很强大的自动补全功能,在浏览代码和编辑代码的时候用起来十分得心应手,下面我将介绍如何配置Eclipse,让它来帮助我们开放linux驱动

(注意,此处说的Eclipse是Eclipse IDE for C/C++ Developers 。而不是Eclipse IDE for Java Developers 安装CDT插件后)。

1、新建一个c project。此项目专门为驱动使用。

在右侧project explorer列表中,右键单击刚才新建的项目,选择properties.
依次选择c/c++ general -> paths and symbols, 在右面选择includes选项卡,languages中选择 GNU C
此时在右侧会显示出编译器默认的include路径,好的添加以下内容
/path/of/kernel/dir/include
/path/of/kernel/dir/arch/arm/include

(如果写的是x86下的驱动,用/path/of/kernel/dir/arch/x86/include)


再选择Symbols选项卡, 点击下方Export Settings,将设置导出为xml文件.
打开该xml文件, 在<language name="C Source File"> </language>标签中,添加
<macro><name>__KERNEL__</name><value>1</value></macro>

之后我们还需要将autoconf.h中的宏定义加入到Eclipse中,执行如下步骤

  1. cd /path/of/kernel/dir/include/linux/  
  2. cat autoconf.h |grep define |awk '{print "<macro><name>" $2 "</name><value>" $3 "</value></macro>"}' > symbol.xml

打开symbol.xml, 将里面的全部内容复制到 刚才xml文件</macro>的后面。

保存文件,点击Import Settings 导入该文件(如果在导入的时候经常提示解析错误,那么应该是xml的格式写错了,一定要好好地检查一下到底是错在哪里了。)

点击OK退出properties,再右击项目,选择 Index -> Rebuild

但是配置到此以后,还是没有办法自动编译。只好使用自己编写的Makefile来编译了。

选择项目properties.
依次选择c/c++ build -> Makefile Generation,将build Direcotry指定为Makefile位置。如${workspace_loc:/HelloDriver}。其中的HelloDriver是我的项目根目录。

然后自己手动编写Makefile文件。并放置到项目的根目录下。

Makefile示例

pwd = $(shell pwd)
KERNEL_SRC = /lib/modules/$(shell uname -r)/build
obj-m := hello.o
module-objs := hello.o
all:
        $(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules
clean:
         rm -f *o *~ .*cmd *o *ko *~ .*cmd  hello.mod.c



右键选择项目->Make Target->Create。在弹出的对话框中,填写Target Name。此处的名称一般为自己编写Makefile中目标名称。在我的Makefile文件中,我一般写all。同样方法也可以添加clean。

此时就可以用Eclipse编写自己的驱动,并且可以通过Make来自动编译驱动程序了。


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值