天天看點

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

UBUNTU10.10下軟體包/開發工具裡選擇安裝Anjuta,然後還要添加庫:sudo apt-get install libpanelappletmm-2.6-dev

Introduction (簡介)

Anjuta是一個為C/C++準備的內建開發環境(IDE)。他是為GTK+/GNOME而開發并具備一系列進階開發功能等特性。他為Linux和UNIX系列的各種指令行程式工具(通常那些工具都隻能在字元界面運作,而且對使用者不

Introduction (簡介)

Anjuta是一個為C/C++準備的內建開發環境(IDE)。他是為GTK+/GNOME而開發并具備一系列進階開發功能等特性。他為Linux和UNIX系列的各種指令行程式工具(通常那些工具都隻能在字元界面運作,而且對使用者不夠友好)提供圖形接口。

Anjuta緻力于解決複雜問題并為功能強大的字元工具提供簡易使用的GNOME圖形使用者接口。盡可能的被設計成使用者友好的操作方式。

Anjuta界面

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

開始熟悉anjuta

目錄: 1.新手上路 2.菜單 3.常用快捷鍵 4.工具條 5.主視窗

新手上路: 要想運作anjuta,首先要打開Gnome的主菜單.在"開發"子菜單中你就會找到它.在紅帽子8.0或者之後的anjuta版本可以在"其他"項子菜單和後來的程式設計子菜單. 圖2.1 anjuta應用程式圖示: [[Image:devt_menu.png] 點選anjuta圖示來運作.IDE就會打開.還可以從終端進入,隻要輸入anjuta指令即可.如果anjuta是第一次啟動.它将提供你一個歡迎資訊.

菜單: 在anjuta的主視窗的頂部是菜單條.幾乎所有的功能都能夠通過點選适當的菜單項來實作.這些功能根據他們的類型被分類.例如,對檔案的操作都被分在"檔案"菜單項. 圖2.2工具條 Missing image

Example.jpg

Image:Example.jpg

File Operations (檔案操作)

3.1建立一個新檔案并插入文本

3.1.1 建立一個新檔案

3.1.2 檔案向導

3.1.3 插入宏

3.2打開和儲存檔案 3.3編輯檔案

3.3.1編輯器留白

3.3.2編輯器向導

3.3.3文法高亮顯示

3.3.4代碼折疊

3.3.5源代碼自動套用格式

Compiling and Building (編譯)

設定編譯器選項

你可以定制編譯器編譯檔案或者工程的方法。每個工程都将擁有它自己的編譯器設定。如果在沒有工程打開的時候修改了選項,這些設定将被分開儲存并且将隻在編譯和建立單個檔案時被應用。這些對使用者都是透明的:Anjuta會自動地進行處理。

支援你的程式

你在前面小節中已經看到了如何指定基本的編譯選項(比如頭檔案和連結庫包含路徑,連接配接器設定等)。當你想使用一些更加标準或者流行的連結庫時,比如GTK和GNOME,這個過程會變得低效。為了使這些連結庫的實作變得簡單和避免不一緻性,這個連結庫的作者通常會随着他們的連結庫一起提供一個配置程式(通常被命名為*-config)。

以上是理論部分。現在來看看實際的應用。Anjuta将會為你解決困難的部分,是以你不必為這些連結庫的配置程式操心;隻需将特定的支援添加到你的項目即可。

為你的程式添加一個連結庫支援:

選擇菜單項Settings > Compiler and Linker Settings并單擊Compiler Options對話框中的Supports标簽。

輕按兩下它們為你的程式選擇支援。

再次輕按兩下任何已經選中的支援将會反選它們。

Supports對話框

可用的支援

目前,Anjuta僅有少數幾個連結庫支援選項Glib,GTK,GNOME和Bonobo。這些選項中的一些還沒有得到完全的支援。

針對支援的編譯器選項

包含路徑

Include paths對話框

絕對或相對包含路徑

連結庫路徑

Library paths對話框

絕對或相對包含路徑

需要連接配接的連結庫

Libraries對話框

定義宏

Defines對話框

編譯器警告

Warnings對話框

代碼優化

其他編譯器設定

其他編譯設定

Running and Testing (運作和測試)

執行程式

編譯完成并生成可執行檔案後,可以選擇菜單項Build->Execute來執行,也可以使用快捷鍵F3來執行。如果你的項目有多個可執行檔案,你可以指定執行哪一個,而且可以指定指令行參數。

依賴關系

與編譯時不同,執行不檢查依賴關系(至少暫時不檢查)。換句話說,執行前并不檢查可執行檔案是不是最新的。是以,你必需自己注意。

圖 5.1. 選擇可執行檔案并設定程式參數

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

Project Management (項目管理)

已配置設定

Debugging (調試)

注意

我們正在開發新改進的調試器。目前的調試器錯誤重重并且本章内容可能不是最新的!

調試簡介

執行

斷點

使用表達式

棧跟蹤

棧視窗

棧跟蹤視窗顯示程式棧的内容。它按調用順序列出了所有的函數及其參數。每個調用都有一個數字與之對應,該數字稱為幀(Frame)。每個調用都是不同的幀。 0号幀代表最後一個調用的函數,按調用順序依次類推。

選擇菜單項View->Program Stack,打開正調試程式的棧跟蹤視窗。

圖 7.11. 棧跟蹤視窗

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

棧跟蹤視窗裡的一個小箭頭指向目前選擇的幀。預設将指向0号幀,即最後一個調用的函數。表達式或變量的估值與監視與選擇幀關聯。要計算的變量或表達式的範圍限制在選擇幀裡。監視視窗的表達式有同樣限制。

設定目前幀

輕按兩下任何一幀将會把該幀設定為目前選擇幀(箭頭指向該幀,訓示被選為目前幀)。或者,右鍵點選棧跟蹤視窗打開操作菜單,選擇菜單項Set frame設定幀。

目前幀資訊

選擇菜單項Debug->Information->Info Current Frame,将會打開一個描述目前幀的視窗,由此擷取目前選擇幀的資訊。

圖 7.12. 目前幀資訊

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

更新棧跟蹤視窗

右擊棧跟蹤視窗打開操作菜單,選擇菜單項Update重新整理棧棧跟蹤視窗。

其它

調試器有很多其它不常用的特性,但仍然有用。

核心信号

Linux系統程序之間通訊方式之一是核心信号。單擊菜單項View->Kernel Signals,将會彈出一個視窗,列出系統全部有效信号,并對每個信号有一個簡短描述。

圖 7.13. 核心信号視窗

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

收到信号後有三種行為:

1. Stop — 收到信号後,訓示調試器是否停止程式的執行(并傳回控制權)。

2. Print — 訓示調試器是否顯示收到的信号。

3. Pass — 訓示調試器是否把信号傳遞給程式。

改變對接收信号的行為

如果需要改變調試器收到特定信号的行為,在清單裡選擇該信号,右鍵點選它打開操作菜單。選擇修改信号(Modify Signal)。将會出現一個對話框,設定這三種行為并點選OK确定改變。

圖 7.14. 修改核心信号對話框

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

向程式發送信号

如果需要向正在調試的程式發送信号,在清單裡選擇要發送的信号,右鍵點選它打開操作菜單,選擇菜單項Send to process。出現一個确認對話框,單擊OK确認即可發送給程式信号。

更新信号清單

右鍵點選核心信号視窗,出現操作菜單,選擇菜單項Update更新核心信号視窗。

CPU 寄存器

單擊菜單項View->Registers,彈出一個視窗,列出了所有微處理器可用的寄存器及其内容,由此可以檢視CPU (微處理器)内部寄存器的内容。

圖 7.15. CPU 寄存器視窗

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

.E5.8A.A8.E6.80.81.E5.8A.A0.E8.BD.BD.E5.BA.93">

動态加載庫

單擊菜單項View->Shared Libraries,彈出一個視窗列出程式加載的所有共享庫以及這些庫在記憶體的位址,并顯示是否加載了符号表(Yes/No)。由此可以得到程式使用的動态庫清單。

圖 7.16. 共享庫視窗

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

中斷程式

程式運作中,不能執行調試任務。為獲得正在運作程式的控制權,單擊菜單項Debug->Interrupt Program。這會中斷程式并把控制權交給調試器。

為使中斷有效,設定調試器收到中斷信号(SIGINT)的動作為[ Stop:Yes, Print:Yes, Pass:No ]。這是預設值。

Preferences(選項)

通過定制Anjuta的選項使其符合你的需求。單擊Settings->Preferences彈出 選項對話框。如果你要重置所有選項為預設,點選Settings->Set Default Preferences。下面進行說明。

正常

1. Project Directory(工程目錄):存放所有工程的路徑。程式向導(Application wizard)隻在這個目錄下建立新的工程。預設工程目錄是~/Projects,預設值适用于大多數使用者。還有,當單擊“打開工程”(Open project)時,這也是文選擇器的起始目錄。

2. User Info(使用者資訊):在這裡填寫正确的名字和電子郵件位址。不用于軟體注冊,而是用來建立ChangeLog 條目以及嵌入和其它文本裡。

檔案管理器

1. Root directory if no project is open(初始根目錄):如果目前沒有打開任何工程檔案管理器的根目錄。

2. File Filter(檔案過濾器):可以從檔案樹濾出某些檔案,例如隐藏檔案 和被版本控制系統忽略的檔案,它們通常在編譯時生成不應被改變。

User-defined Tools(自定義工具)

簡介

通常你會發現Anjuta提供的内建功能有限。這可能促使你增加自己所需特性到Anjuta的代碼庫裡,或送出一個實作某特性的請求。但是,這兩個方法很可能出現問題而且進展緩慢,尤其是當你的工具比較專業和特殊的時候。這種情況下最好使用Anjuta工具架構來取代其他方式。 Anjuta為構造自定義工具提供了一個強大的架構來擴充其功能。利用變量自定義工具可以使用幾乎所有IDE的特性。你可以在任一菜單項下增加自定義工具,在GUI架構裡指定輸入、輸出和錯誤重定向,并且提供該工具的指令行參數。

注意

使用工具插件需要激活(Enabled)!

工具示例

這是一個簡單的例子展示如何使用工具插件,該插件內建了GNOME ChangeLog生成腳本。

圖 9.1. 工具編輯器

Anjuta—基于GTK+/GNOME的C/C++優秀開發環境

Authors(作者)

Anjuta項目由Naba Kumar創立,查詢該項目所有貢獻者請通路網頁http://anjuta.sourceforge.net/credits 。

關于Anjuta的更多資訊,請通路該項目的站點http://anjuta.org 。在項目開發網站http://www.sourceforge.net/projects/anjuta 使用軟體缺陷追蹤系統(Bug Tracker)報告Bug。

這個手冊由Naba Kumar 和 Andy Piper編寫。對該手冊的意見和建議請發送到Anjuta 開發清單 <[email protected]> ,也可以通過SourceForge的項目追蹤系統遞交。

License(許可)

本程式是自由軟體,你可以重新釋出它或者在自由軟體基金公布的GNU GPL的條款下修改它,遵循的GPL可以是版本2或更高的版本。

本篇文章來源于:開發學院 http://edu.codepub.com   原文連結:http://edu.codepub.com/2009/0528/4806.php本篇文章來源于:開發學院 http://edu.codepub.com   原文連結:http://edu.codepub.com/2009/0528/4806.php

繼續閱讀