eclipse的C/C++開發搭建


環境

宿主機:ubuntu 16.04

交叉編譯:gcc-linaro-4.9-2014.11

ubuntu自帶源 eclipse 安裝(想使用新版直接跳過)

安裝eclipse

sudo apt-get install eclipse-platform

安裝C/C++開發插件

sudo apt-get install eclipse-cdt

在命令行輸入 eclipse 即可啟動

第一次啟動會要求設置默認工作區,選擇一個workspace 目錄即可,后面的工程均可放在里面。

 

eclipse-cpp-2019-06-R-linux-gtk-x86_64 使用 

1.eclipse新版C/C++開發包下載

下載地址:https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2019-06/R/eclipse-cpp-2019-06-R-linux-gtk-x86_64.tar.gz

2.eclipse運行環境 jre 下載,當然也可以使用 jdk, ubuntu也自帶了 openjdk

jre下載地址:https://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

我下載的 jre-8u221-linux-x64.tar.gz  

解壓安裝

tar -xzvf eclipse-cpp-2019-06-R-linux-gtk-x86_64.tar.gz
tar -xzvf jre-8u221-linux-x64.tar.gz

到解壓目錄執行 ./eclipse

新版eclipse太占內存了,剛開始啟動1G內存提示不夠用,需要設置進行內存優化

還是使用老版,接下來的設置均采用老版。  

 

eclipse工程示例及設置

1.新建工程

file->new->C project

 填寫工程名稱,會自動生成工程目錄;選擇交叉編譯 Cross GCC

設置交叉編譯器

 

 

2. eclipse常用設置

右擊工程,選擇 properties-> C/C++ Build

建議使用自己的Makefile使工程更加靈活性,去掉自動生成makefile,若使用eclipse自動編譯則另外應詳細設置 Setting 項

 

3. 交叉編譯調試gdb設置

 

4. Linux內核開發eclipse環境配置

當開發內核模塊、內核驅動、內核修改時均需要配置為對應內核版本

當eclipse導入 相關配置宏定義、頭文件路徑時,便於源碼的檢錯和查看。

配置步驟:

1.導出eclipse的 Paths and Symbols配置xml模板

工程上右鍵properties---->C/C++ General--->Paths and Symbols

右下角選擇Export Settings ,自定義xml文件路徑名稱,一般放在工程目錄下即可

我導出到 ~/workspace/wh_fsu/symbol.xml

 

2. 生成內核配置xml文件

內核配置文件為 .config,最好使用其編譯時生成的 autoconf.h 文件來轉化為 xml 文件;

注意 autoconf.h 在 make 時才會生成,位置在 linux-4.1.15/include/generated/autoconf.h

轉化命令

cat autoconf.h |grep define |awk '{print "<macro><name>" $2 "</name><value>" $3 "</value></macro>"}' > symbol.xml

 

修改工程的xml文件

1)添加頭文件目錄

常用的有:

linux-4.1.15/include

linux-4.1.15/arch/arm/include

linux-4.1.15/arch/arm/mach-mxs

添加到第一個<language name="C Source File">和 </language>之間

<language name="C Source File">

<includepath>/home/wangh/Tools/linux-4.1.15/include</includepath>
<includepath>/home/wangh/Tools/linux-4.1.15/arch/arm/include</includepath>
<includepath>/home/wangh/Tools/linux-4.1.15/arch/arm/mach-mxs</includepath>

</language>

2)然后將autoconf.h轉化的xml文件里面的內容 全部拷貝到 第二個<language name="C Source File">和 </language>之間

同時添加一行

<macro><name>__KERNEL__</name><value>1</value></macro>

 

修改好后,import  Settings 效果如下

 

添加自己的內核模塊 Makefile 示例

其中內核目錄 KERNEL_4115_PATH 我定義在環境變量中了

 

ifneq ($(KERNELRELEASE),)
obj-m := wh_gpio.o 
else
PWD  := $(shell pwd)
KDIR:=$(KERNEL_4115_PATH)
all:
    $(MAKE) -C $(KDIR) M=$(PWD) modules
clean:
    rm -rf .*.cmd *.o *.mod.c *.ko .tmp_versions *~ *.order *.symvers
endif

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM