配置eclipse linux嵌入式 集成开发环境(编译部分)详细

2019-07-12 17:01发布

开发环境: ubuntu12.04(64位) eclipse (c/c++)luna 注意:本文主要讲将eclipse配置好编译器。 远程调试的部分请看另一篇帖子 eclipse 调试环境配置。 我的arm-linux-gcc 路径是:/opt/EmbedSky/4.3.3/bin/arm-linux-gcc  (什么?怎么看arm-linux-gcc的路径??  你可以使用 which arm-linux-gcc 来察看) 我的linux 内核路径是:/opt/EmbedSky/linux-2.6.30.4
step1: 安装eclipse以及jdk的配置、交叉编译器的配置,这部分请看eclipse(c/c++)luna安装
step2: 0、这一步假设你已经能正常打开eclipse arm-linux-gcc已经配置好。 1、打开eclipse,最好将工作空间设为nfs,以便你的板子挂载它。(nfs配置方法请看这个nfs挂载方法)。 打开后如图所示:
我已经建了个工程。你第一次打开肯定不是这样的。 2、新建一个工程: file->new->c project.   如图:
3、输入工程名称。
选择 Empty Project   cross GCC。  finish就可以,具体配置我们等会再来配置。
step3: 下面让我们配置一番。 0、主要包括:取消makefile自动生成,配置编译器arm-linux-gcc,配置路径和符号。 1、取消eclipse自动生成 makefile :将General Makefile automatically的对勾去掉。  ok

3、配置编译环境: 在左侧项目栏右击项目名称 ->选择properties,在c/c++build-->setting里,把toolsetting中的command都改成arm-linux-gcc,arm-linux-gcc和arm-linux-as一共改这三个。 4、配置路径和符号: 选择 gun C ,点击右侧add  添arm-linux-gcc的一些头文件: 我的是: /opt/EmbedSky/4.3.3/lib/gcc/arm-none-linux-gnueabi/4.3.3/include /opt/EmbedSky/4.3.3/lib/gcc/arm-none-linux-gnueabi/4.3.3/include-fixed /opt/EmbedSky/4.3.3/arm-none-linux-gnueabi/include /opt/EmbedSky/4.3.3/arm-none-linux-gnueabi/libc/usr/include 添加的时候别忘了选择(打钩):add to all configurations。
我们保存下配置: 点击下面的 export setting。 格式是xml文件,名字随便,位置随便,它是一个非常随便的文件  哈哈。 配置还没结束,这样的配置显然是不够的,我们干脆在xml文件中配置好了。 5、打开你保存的xml文件,我们来编辑他。用gedit打开就行。 在第一个



之间添入内核树的头文件的路径(include路径)。我的是: /opt/EmbedSky/linux-2.6.30.4/include
/opt/EmbedSky/linux-2.6.30.4/arch/arm/include
/opt/EmbedSky/linux-2.6.30.4/arch/arm/plat-s3c24xx/include
注意格式。欲知详情,请学习 xml。这样内核树路径的问题就解决了,这里我想顺便提醒一句,你的内核编译过吗?  没编译过是不行的,编译驱动程序的时候会提示一个文件打死都找不到,赶紧make一遍吧! 6、找到 autoconf.h  我们需要这里面的宏定义,将这些宏放在symbols里面。具体做法: 我的autoconf.h文件在   /opt/EmbedSky/linux-2.6.30.4/include/linux 目录下。如果咱俩的版本不一样 请自己grep一下。 进到这个目录下,然后执行一下命令: cat autoconf.h |grep define |awk '{print "" $2 "" $3 ""}' > symbol.xml
这个命令的作用是将autoconf.h 文件里的宏 全部存放到 symbol.xml这个文件中。没成功??不可能吧,使用sudo试试 打开这个symbol.xml文件,复制文件中所有的文字 粘贴到 我们刚才从eclipse导出来的配置文件中(也是xml文件)。粘贴到的位置是: 第二个



的中间。 并在 下面手动加一条: __KERNEL__1 
预览一下吧: step5:
好了,配置文件总算弄完了,保存一下。 我们再打开eclipse的 gun c的那个配置界面,点击import setting按钮,将这个xml文件导进来。以后我们再建工程时直接导入这个配置文件就好了。 linux 驱动开发IDE就这样的打造好了。                                           写个教程不容易,转载请标注出处。http://blog.csdn.net/tianzhihen_wq 简单实验一下。  导入一个 .c文件和makefile 给你个例子: #include #include MODULE_LICENSE("Dual BSD/GPL"); static int hello_init(void) { printk(KERN_ALERT "Hello, world "); return 0; } static void hello_exit(void) { printk(KERN_ALERT "Goodbye, cruel world "); } module_init(hello_init); module_exit(hello_exit);
ARCH=arm CROSS_COMPILE=arm-linux-gcc obj-m := hello.o KDIR :=/opt/EmbedSky/linux-2.6.30.4 PWD :=$(shell pwd) all: $(MAKE) -C $(KDIR) M=$(PWD) modules clean: $(MAKE) -C $(KDIR) M=$(PWD) clean
makefile需要根据你linux内核位置选择一下。  还有一点,由于我们是使用自己的makefile,编译的时候eclipse默认从工程目录下的Debug目录编译,这个位置可以从eclipse的 pwd 路径 选择,如图: 好多配置,我相信过5天后让我从头开始配置的时候肯定又忘了。。。所以转一份我的博文吧,转载请标注出处。http://blog.csdn.net/tianzhihen_wq 这写都配置完了,build一下吧,看看debug目录下有没有  .ko文件。 祝你成功!。