C/C++下Netbeans的配置


目錄

目錄1

1 netbeans開發環境搭建2

2 netbeans工程管理2

2.1 采用IDE自動生成Makefile2

3 netbeans工程配置2

3.1 編譯工具鏈3

3.1.1 添加配置項 3

3.1.2 設置交叉編譯工具 3

3.2 頭文件、鏈接庫、預編譯的宏4

3.2.1 頭文件路徑 4

3.2.2 鏈接庫 5

3.2.3 預編譯宏 6

3.2.4 指定輸出文件的路徑及名字 6

3.3 其他實用設置6

3.3.1 選擇編程語言的標准 6

3.3.2 添加編譯前后執行的命令 6

3.3.3 修改字體大小 7

3.3.4 記錄編譯號 7

3.3.5 自動格式化對齊 8

4 編譯生成鏈接庫9

5 遠程調試10

5.1 gdbserver調試工具安裝 10

5.2  Netbeans遠程調試設置 11

附錄11

常用快捷鍵11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 netbeans開發環境搭建

官網:https://netbeans.org/

選擇自己需要的版本(c/c++、linux)下載好之后直接運行*.sh文件,然后按圖形界面提示點下一步即可。

 

2 netbeans工程管理

2.1 采用IDE自動生成Makefile

創建嵌入式工程主要配置交叉編譯工具鏈,本文以創建C語言工程為了例。

1)新建工程

新建C言語工程:File->New Project->C/C++ -> C/C++ Applicatin->Next

輸入工程名點擊完成即可。

 

 

3 netbeans工程配置

使用過程中通常需要設置編譯工具、用戶頭文件、鏈接庫等信息。

3.1 編譯工具鏈

3.1.1 添加配置項

在嵌入式編程中經常需要先在宿主機編譯程序運行通過后再交叉編譯到目標板運行。所有最好使用兩個配置項,一個是主機Linux的,另一個是嵌入式Linux的。方法如下:

Properties-> Build->Manage Configuurations->New 輸入名字點OK即可。

 

 

3.1.2 設置交叉編譯工具

 

 

 

 

3.2 頭文件、鏈接庫、預編譯的宏

編譯工具鏈自帶的頭文件和鏈接庫在添加好編譯工具鏈后會自動配置好,但是程序中自定義的頭文件和使用到的鏈接庫需要配置。

3.2.1 頭文件路徑

 

 

3.2.2 鏈接庫

添加鏈接庫名配置: 輸入鏈接庫名字(去掉lib.*),如libmsc.so 輸入msc即可。所有編譯時需要鏈接非標准庫的都要加上,如:線程庫pthread

 

 

 

 

3.2.3 預編譯宏

Properties-> Build-> C Compiler->Preprocessor Definitions

 

3.2.4 指定輸出文件的路徑及名字

Properties-> Build-> Linker->Output

 

 

3.3 其他實用設置

3.3.1 選擇編程語言的標准

C++設置方法: Properties-> Build-> C++ Compiler->C++ standard 選擇C++ 11點擊OK

 

 

3.3.2 添加編譯前后執行的命令

此項功能個人覺得非常有用,通過添加命令可是實現編譯后將輸出文件拷貝到指定目錄;執行靜態代碼檢查工具等功能。

配置方法:(注意:命令前要加兩個tab,使關鍵字變色才能運行)

Files視圖直接打開Makefile文件。

在.build-pre:  后加入編譯之前執行的命令。

在.build-post: 后加入編譯之后執行的命令。

 

 

 

3.3.3 修改字體大小

方法:Tools –> options->Fonts & Colors

 

3.3.4 記錄編譯號

properties-> Build->C C->Cross GCC Linker->Miscellaneous->Link flags

 

Additional options填寫內容:

-Xlinker --defsym -Xlinker BUILD_VERSION=$$(cat $(BUILD_NUMBER_FILE))

BUILD_VERSION為變量名,BUILD_NUMBER_FILE為記錄變量值得文件名。

 

編譯前執行的命令(使BUILD_NUMBER_FILE文件里的數值加1):

@if test "${CONF}" = "DebugARM"; then \

    rm ${CND_BUILDDIR}/${CONF}/${CND_PLATFORM_${CONF}}/rtklite.o; \

    if ! test -f $(BUILD_NUMBER_FILE); then echo 0 > $(BUILD_NUMBER_FILE); else \

echo $$(($$(cat $(BUILD_NUMBER_FILE)) + 1)) > $(BUILD_NUMBER_FILE); \

    fi \

fi;\

if test "${CONF}" = "Debug"; then \

    rm ${CND_BUILDDIR}/${CONF}/${CND_PLATFORM_${CONF}}/rtklite.o; \

    if ! test -f $(BUILD_NUMBER_FILE); then echo 0 > $(BUILD_NUMBER_FILE); else \

echo $$(($$(cat $(BUILD_NUMBER_FILE)) + 1)) > $(BUILD_NUMBER_FILE); \

    fi \

fi;\

 

在程序中調用變量:

extern int BUILD_VERSION;

printf(“%d”, (int)(&BUILD_VERSION));   

 

3.3.5 自動格式化對齊

選擇代碼按快捷鍵:Alt+Shift+F

自定義規則:

Tools –> options –> Editor –> Formatting –> Manage –>New 新建配置項。

Braces placement->Function declaration->Next line(修改函數的開頭大括號)

4 編譯生成鏈接庫

建議新建一個配置項單獨用於編譯鏈接庫。

鏈接庫里一定不能有main函數,所以有main函數的文件不能一起編譯,只需將需要用到的源文件編譯即可。

1、 排除不需要編譯的文件

Projects視圖中 source Files里選中不需要編譯的文件,鼠標右鍵點Properties->General->Exclued  From  Build 打上勾。

 

2、 設置編譯

Properties->Build->Configuration Type 選擇Dynamic Library(動態鏈接庫),也可以選擇Static Library(靜態鏈接庫)。選好后直接編譯工程就可以了。

 

5 遠程調試

遠程調試是在主機上控制調試目標板上運行的程序,主要有串口和網絡兩種連接方式,本文介紹的是通過網絡(TCP)的方式進行遠程調試。調試需要使用gdb工具,所以通過交叉編譯得到在目標板運行的gdbserver工具和在相應的在主機運行的gdb客戶端。

5.1 gdbserver調試工具安裝

下載地址:http://www.gnu.org/software/gdb/download/

制作目標板的gdbserver

$cd gdb/gdbserver/(進入gdb-7.10/gdb/gdbserver/)

$./configure --target=arm-arago-linux-gnueabi --host=arm-arago-linux-gnueabi

$make

編譯完成后會在當前目錄輸出gdbserver文件,把gdbserver拷貝到目標板運行。

輸出如下信息表示已完成gdb工具的制作:

$./gdbserver

Usage:  gdbserver [OPTIONS] COMM PROG [ARGS ...]

        gdbserver [OPTIONS] --attach COMM PID

        gdbserver [OPTIONS] --multi COMM

...............................

 

5.2  Netbeans遠程調試設置

netbeans官網的Plugins里找到gdbservion進行插件下載。

1Netbeans安裝插件:

Tools->Plugins->Downloaded->Add Plugins(選擇插件)->Install

 

2、運行遠程調試

先在目標板上運行gdbserver

$./gdbserver 192.168.5.1:1234 demo 運行gdbserverdemo為調試的應用程序

Process test created; pid = 1032輸出以下消息表示運行成功

Listening on port 1234

 

連接成功后:

[root@gware /root]#./gdbserver 192.168.5.1:1234 demo                                                                              

Process demo created; pid = 1032

Listening on port 1234

Remote debugging from host 192.168.5.100

 

 

附錄

常用快捷鍵

查看和自定義快捷鍵:Tools->Options->Keymap

 

格式化(自動對齊):Alt+Shift+F
注釋/取消注釋:Ctrl+/
顯示搜索對話框:Ctrl+H
撤銷Ctrl+Z
保存:Ctrl+S
保存所有:Ctrl+Shift+S

跳到指定行:Ctrl + G

折疊所有代碼塊:Ctrl-Shift+數字鍵盤上的 -
展開所有代碼塊:Ctrl-Shift+數字鍵盤上的 +

 


免責聲明!

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



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