Code::Blocks是開放原始碼的全功能的跨平臺C/C++整合開發環境

zhengnx發表於2015-08-17

Code::Blocks,是開放原始碼軟體,是一個開放原始碼的全功能的跨平臺C/C++整合開發環境。Code::Blocks由純粹的C++語言開發完成,它使用了蓍名的圖形介面庫wxWidgets(2.6.2unicode)版。對於追求完美的C++程式設計師,再也不必忍受Eclipse的緩慢,再也不必忍受VS.NET的龐大和高昂的價格。



1<!-- 為了相容以前的錨點而設定的 --&gt 簡要介紹 編輯<!-- section_title --&gt

<!-- 二級標題 --&gt

Code::Blocks是一個開源、免費、跨平臺(支援WindowsGNU/Linux、MacOSX以及其他類UNIX)、支援外掛擴充套件的C/C++整合開發環境Code::Blocks的原始碼使用GPL3.0釋出,是免費自由軟體

2<!-- 為了相容以前的錨點而設定的 --&gt 主要特點

編輯
<!-- section_title --&gt
<!-- 二級標題 --&gt

雖然Code::Blocks從一開始就追求跨平臺目標,但是最初的開發重點是Windows平臺,從06年3月21日版本:1.0revision2220開始,Code::Blocks在它的每日構建中正式提供GNU/Linux版本,這樣Code::Blocks在1.0釋出時就成為了跨越平臺的C/C++IDE,支援WindowsGNU/Linux。由於它開放原始碼的特點,Windows使用者可以不依賴於VS.NET,編寫跨平臺C++應用。

Code::Blocks提供了許多工程模板,這包括:控制檯應用、DirectX應用、動態連線庫、FLTK應用、GLFW應用、Irrlicht工程、OGRE應用、OpenGL應用、QT應用、SDCC應用、SDL應用、SmartWin應用、靜態庫、Win32GUI應用、wxWidgets應用、wxSmith工程,另外它還支援使用者自定義工程模板。在wxWidgets應用中選擇UNICODE支援中文。

Code::Blocks支援語法彩色醒目顯示,支援程式碼完成(目前正在重新設計過程中)支援工程管理、專案構建、除錯。

Code::Blocks支援外掛,包括程式碼格式化工具AStyle;程式碼分析器;類嚮導;程式碼補全;程式碼統計;編譯器選擇;複製字串到剪貼簿偵錯程式;檔案擴充套件處理器;Dev-C++DevPak更新/安裝器;DragScroll,原始碼匯出器,幫助外掛,鍵盤快捷鍵配置,外掛嚮導;To-Do列表;wxSmith;;wxSmithMIME外掛;wsSmith工程嚮導外掛;WindowsXP外觀。

Code::Blocks具有靈活而強大的配置功能,除支援自身的工程檔案、C/C++檔案外,還支援AngelScript、批處理、CSS檔案、D語言檔案、Diff/Patch檔案、Fortan77檔案、GameMonkey指令碼檔案、Hitachi彙編檔案、Lua檔案、MASM彙編檔案、Mathlab檔案、NSIS開源安裝程式檔案、OgreCompositor指令碼檔案、OgreMaterial指令碼檔案、OpenGLShading語言檔案、Python檔案、Windows資原始檔、XBase檔案、XML檔案、nVidiacg檔案。識別Dev-C++工程、MSVS6.0-7.0工程檔案,工作空間、解決方案檔案。

Code::Blocks基於wxWidgets開發,正體現了wxWidgets的強大。以前BorlandC++BuilderX宣稱基於wxWidgets開發跨平臺、相容性好、最優秀的C++IDE環境,但沒有實現;讓我們拭目以待。國內的Code::Blocks愛好者和跨平臺開發員應該儘快建立中文Code::Blocks網站,提供Code::Blocks中文化支援,促進Code::Blocks在國內的發展。

3<!-- 為了相容以前的錨點而設定的 --&gt 基本配置

編輯
<!-- section_title --&gt
<!-- 二級標題 --&gt

關於中文,安裝中文語言包即可。

<!-- section_title --&gt
<!-- 二級標題 --&gt

Windows平臺安裝

依次安裝GCCForWindows、GDBForWindows(見擴充套件閱讀,或者用CodeBlocks附帶的MinGW)、CodeBlocks。

開啟CodeBlocks,在Settings->Compileranddebuggersettings->選擇GNUGCCCompiler,並在Toolchainexecutables中設定好對應執行軟體路徑(若是希望使用VC編譯器,類似地設定即可)。

<!-- section_title --&gt
<!-- 二級標題 --&gt

其他平臺安裝

軟體源中安裝即可。

4<!-- 為了相容以前的錨點而設定的 --&gt 版本釋出

編輯
<!-- section_title --&gt
<!-- 二級標題 --&gt Sunday, 25 November 2012 12:23

2012年11月25日 星期六

Changelog

更新日誌

For the release 12.11, we provide a top-level changelog hereby about what has changed since 10.05 (to download this or a full

change log, links are provided at the bottom of this page):

關於版本12.11起自於10.05的更新,我們特此提供了一個頂端檢視級的預覽(要下載這個完整的更新日誌,連結在本頁的底端)。

<!-- section_title --&gt
<!-- 二級標題 --&gt

General

<!-- section_title --&gt
<!-- 二級標題 --&gt

常規

- Better support for dark themes in Linux

對Linux暗主題更好的支援

- Support open file's containing folder using the context menu of the file

在環境選單中支援開啟檔案時包含路徑

- Context menu item to show file in project tree

環境選單條目可以以樹形結構顯示專案中的檔案

- Improved lexers for various languages

多方語言語法分析器功能改進

- Added the ability to show tooltips on cbAuiNotebook tabs - show full filename and project in tooltip for editor tabs

增加了在筆記本標籤上可以顯示的功能-它在編輯選項卡上顯示完整的檔名稱和專案

- Added the ability to maximize editors with double-click on tab

增加了一個雙擊檔案選項卡可以最大化編輯器視窗的功能

- Add ability to hide the editor tabs, can be toggled with "View -> Hide editor tabs" or "Ctrl+H"

增加了一個使用"檢視"選單下的"隱藏編輯器選項卡"或快捷鍵"^H"隱藏編輯器選項卡的功能

- Select file from all projects in the workspace (Search->Goto file)

在工作區中可以從所有專案中選擇檔案(Search下的Goto file)

- Some accessibility improvements - more things are accessible only with a keyboard

許多重要的可訪問性改進-許多僅能從鍵盤上完成的可訪問性改進

- Lots of improvements to the Marcos support in the options - more options support macro expansion and there are more

variables

大量關於宏支援的選項改進-更多關於宏的擴充套件和更多變數的選項支援

- Added per language override for the 'use tabs' setting. Currently only for Python files (always use spaces) and for

Makefiles (always use tabs)

在"use tabs"設定中增加了每一種語言重寫的功能設定,當前僅支援Python語言檔案(已經在使用者空間中)和Makefiles檔案(已經在編輯器

選項卡中)

- Use gtk-notebook as default notebook on systems using wxGTK, so the notebook-tabs integrate more smooth into the systems

theme

使用者GTK筆記模式可以被wxGTD預設使用,所以這個選項卡標籤被平滑過渡的方式整合了到系統主題中

- Active project no longer stored in workspace but in dedicated layout file for the workspace,

啟用的專案不再儲存在工作區,除非這個檔案是特別指定為空間的佈局檔案

- Speed up scrolling in wxScintilla

提升wxScintilla的滾動速度

- Harmonised find and replace dialogues

優美和諧的查詢替換對話方塊

- Added power user support for units global feature. These are directory paths that can be specified, and all files in there will be considered as sources for the project. This can be based on a wild-card for the file types, and can be recursive.When no wild-card is specified (empty) the default CB wild-card for adding files is used

增加了一個強大的全域性使用者單元支援,這需要指定一個目錄給它,並且所有與專案有關的原始碼檔案都會被考慮在內。此操作的檔案型別可以由萬用字元擴充套件。當未指定萬用字元時,預設的CB萬用字元將被用於新增檔案。

- Made the localization to be off by default, hopefully this will minimize the number of people getting the right-to-left

text issue

本地化功能預設被關閉,因為只有極少數使用者有這種從右至左的語言書寫順序問題解決期望。

- Add predefined settings for the terminals on Linux

為Linux的終端增加了預定義設定功能

<!-- section_title --&gt
<!-- 二級標題 --&gt

Compiler

<!-- section_title --&gt
<!-- 二級標題 --&gt

編譯器

- Support GCC up to version 4.7

GCC版本支援到4.7

- Improved Fortran/D support

改進Fortran/D支援

- Improved resource compilation with MinGW resource compiler

改進MinGW原始碼編譯器的原始碼編譯功能

- Automatically re-link a project when a dependant static library has been changes

當依賴於一個專案存在的這個靜態庫被改變時自動重新連線這個專案

- Switched full command line logging to be the default option for all compilers

為所有編譯器轉換了完整命令列日誌

- Fixed Cygwin Compiler auto-detection

修復Cygwin(注:一個小型UNIX模擬環境)編譯器的自動檢測功能

<!-- section_title --&gt
<!-- 二級標題 --&gt

Code Completion

<!-- section_title --&gt
<!-- 二級標題 --&gt

程式碼自動完成

- Calltip improvements: cleaned it up (strip duplicates), refined the calltip window position, "Pretty Print" each function

names

關於提示點的改進:可以清除它(去除重複),重新定位一個精緻的Windows提示點,對每個函式名稱的"Pretty Print"功能

- Fixed showing the Call tip for consturctors and destructors

修復了構造器和解構造器的提示點顯示功能

- Optimised the Symbols browser by avoid unnecessary updates

最佳化了符號瀏覽狀態下關於avoid的一些不太重要的更新

- Fixed some bug when saving/loading the Code completion options

修復了一些程式碼自動完成選項中儲存和載入的問題

- Made 'Find implementation' and 'Find declaration' to be more precise (goto to line and column)

使"Find implementation"(注:搜尋實現)和"Find declaration"(搜尋宣告)更準確(直接定位到行和列)

- Fixed some bugs with the refresh of the Code completion toolbar

修復了程式碼自動完成工具欄上重新整理的一些問題

- Fixed many bugs in the parser (crashes, deadlocks and parsing errors)

修復了語法分析器(崩潰、死鎖、分析錯誤)的多個問題

- Added support to the parser for handling conditional preprocessor directives (only for file scope, included files aren't

expanded)

增加了對語法分析器手動預處理指令的支援(僅限檔案作用域,include檔案尚未擴充套件進來)

- Improved the Macro replacement and added macro replacement for GCC/MSVC build-ins

改進了宏替換功能,增加了GCC/MSVC上構建的的宏替換功能

- Made the parser more robust and improved the thread safety

使語法分析器更加執行強健並且改進了它的執行緒安全

- Introduce two major options for the operation of the Code completion plugin: one parser for all workspace or a parser per

<!-- section_title --&gt
<!-- 二級標題 --&gt

project

介紹兩個比較重點的自動完成操作選項功能的外掛:一個工作區全域性語法分析器和一個逐個專案的語法分析器

- Improved the parsing of Class inheritance, now it is better and faster

改進了類繼承的語法分析

- Improved parsing of C++ template constructs, typedef statements, operator overloading

改進了C++構件、型別自定義語句typedef和過載操作的語法分析器

- Added macro expansion for some code patterns (e.g. wxWidgets's event handling table/entry macros)

增加了許多程式碼塊的宏擴充套件功能(比如wxWidgets的事件處理表單或資源宏)

- Added None/Null parser for parsing files not included in any C::B project.

增加了不包含任何C::B專案的檔案中的None/Null的語法分析

- Adding code with auto-completion follows the active indentation and EOL style

增加程式碼自動完成功能和下面內容自動縮排,並且擁有EOL(注:面向表示式的語言)風格

- Support auto-completion for include header file names and preprocessor directives

支援include標頭檔案名稱和預處理指令的自動完成功能

- Automatically append the text if the prefix word already exists before the caret(after the user hit Enter on the suggestion

list)

在已經在前面存在的的插入符號前自動追加文字檔案的字首(如果使用者按了Enter鍵則顯示建議候選值列表)

- Support auto-completion for member variable initialisation

支援成員變數初始化自動完成功能

- Added some tools for simple refactoring tasks: find references, rename a symbol (not 100% precise)

增加了一些簡單重構任務的工具:查詢參照,符號重名稱(並非百分之百精確)

* Not implemented (TODO) - parsing of multiple template arguments

未執行的(TODO)-多樣化模板引數語言分析器

<!-- section_title --&gt
<!-- 二級標題 --&gt

Debugger

<!-- section_title --&gt
<!-- 二級標題 --&gt

偵錯程式

- Reworked the plugin API and made it easier to implement different debugger plugins (currently there are at least 3 plugins

in progress)

重寫和外掛API功能並且使它更容易為不同的實現偵錯程式所呼叫(當前至少還有3個外掛正在此程式中繼續進行著)

- Reimplemented the watches window to be easier to use* using wxPropertyGrid control. Now adding, removing, editing watches

should be easier

重應用一個觀察視窗使它更易於為wxPropertyGrid所呼叫。增加、刪除、編輯觀察點容易多了

- Reimplemented the UI used for the 'Evaluate expression under cursor' feature, it is similar to the new watches window

重應用"Evaluate expression under cursor"的一個有特色的使用者介面(UI),它與全新的觀察視窗竟然有些相似

- Fixed some problems in the callstack window - switching to the selected frame should work 99% of the time

修復了多個棧呼叫視窗的問題-切換到已選擇的視窗框架可以看到99%的時間下工作的棧

- There were many improvement to the disassembly window

還有許多反彙編視窗的重要改進

- The debugger options have been extracted in Settings->Debugger. Multiple configurations are supported for every different

<!-- section_title --&gt
<!-- 二級標題 --&gt

plugin

偵錯程式選項被調整到了"Settings"選單下的"Debugger"這裡。多個不同功能的外掛可以在這裡被支援並且可以配置它們

- Made it possible to run the host application for a DLL project in a terminal

使執行在終端上呼叫DDL專案的主機應用程式更加合適

- The GDB plugin is way more robust and reliable now, GDB 7.5 is supported

7.5版也已經支援了

- The CDB plugin is vastly improved

大幅改進CDB外掛

- Remote debugging works better

遠端呼叫工作可以更好的進行

- Made it possible to use marco replacement variables in many places

使宏替換變數在許多地方可以執行的更好

* The local variables and function arguments features have not been reimplemented, because of complexities in the UI design,

reliability issues and performance

本地變數和函式引數特性沒有重應用,所以UI設計的複雜性、可靠性問題和效能問題仍然存在

<!-- section_title --&gt
<!-- 二級標題 --&gt

New plugins

<!-- section_title --&gt
<!-- 二級標題 --&gt

新增外掛

- Abbreviatons (extracted from the core): provides auto-completion (note that this has nothing to do with code completion):

Abbreviatons(由核心釋出):自動完成功能改進(注:這裡沒有程式碼自動完成功能需要做的任何事情)

- Cscope: integrates the source code searching features of Cscope:

Cscope:整合原始碼查詢特性,

- DoxyBlocks: support for doxygen inline documentation:

DoxyBlocks:支援doxygen行內函數文件在

- EditorConfig:

EditorConfig:

- EditorTweaks: make one off changes to active editor (EOL mode, wrap etc) and code alignment

<!-- section_title --&gt
<!-- 二級標題 --&gt

tool

EditorTweaks:使用了一個編輯器啟用程式碼工具並且它有停靠對齊工具欄(EOL模式、wrap模式等等),訪問

- FileManager: tree view of the file system with support for basic file management operations in the management pane:

FileManager:以樹狀結構檢視已經支援的基本檔案系統及其操作選項管理皮膚

- NassiShneiderman: creation of Nassi Shneiderman diagrams:

NassiShneiderman:建立一個Nassi Shneiderman對話方塊

- ReopenEditor: reopens last closed editor(s) via hotkey (Ctrl+Shift+t) or menu-item

ReopenEditor:重新開啟最後一次從編輯器中關閉的檔案(熱鍵^+~+t)或選單條目

- SmartIndent (extracted from the core): multi-language support for automatic indenting of code to match typical indentation

<!-- section_title --&gt
<!-- 二級標題 --&gt

styles

SmartIndent(核心釋出):多種語言支援程式碼自動匹配和自動智慧縮排

- SpellChecker: check spelling in comments and strings using hunspell:

SPellChecker:使用者字串和註釋中的拼寫檢查,使用hunspell(注:一種拼寫檢查器)技術

- ToolsPlus: creation and management of custom tools

ToolsPlus:建立和管理一個自定義工具

Improved plugins:

<!-- section_title --&gt
<!-- 二級標題 --&gt

改進外掛

- Abbreviations: added support for autocompletion and automatic conversion of tab/space and eol style of the editor

Abbreviations:增加和對編輯器的自動完成和自動轉換標籤、空格和EOL風格的支援

- AStyle: add brackets option, delete empty lines option, other new features from moving to astyle 2.02

AStyle:增加括號選項,刪除空行選項以及其他一些關於AStyle2.02的新特性

- AutoSave: new option to autosave entire workspace, bug fix for timer UI

AutoSave:新選項支援工作區自動儲存,修復了時間UI上的一個問題

- AutoVersion: improved svn support (legacy versions, git-svn), bug fixes

AutoVersion:提升了SVN的支援(遺留版本、GIT-SVN),修復多個問題

- BrowseTracker: jump tracker now ignores line 1 activations

- CppCheck: configuration UI, bug fixes

CppCheck:UI配置多個問題修復

- CodeSnippets: bug fix (crasher)

CodeSnippets:多個問題修復(關於崩潰的)

- CodeStatistics: stats for project or entire workspace

CodeStatistics:工作區條目或專案狀態

- DragScroll: bug fix (gtk crasher)

DragScroll:修復問題(GTK崩潰問題)

- Header Fix-up: STL and C library bindings

Header Fix-up:STL和C語言庫繫結

- Help: support for windows help collections, fixes crash on exit

<!-- section_title --&gt
<!-- 二級標題 --&gt

Help

支援Windows幫助集合物件,修復了在退出時崩潰的問題

- HexEditor: crash fix

HexEditor:崩潰問題修復

- KeyBinder: remove Ctrl-C/V/X (copy/paste/cut) from menu keybinder table to allow native behavior, other fixto play more

nicely with OS *********-check?

KeyBinder:刪除了KeyBinder選單中的CTRL-C/V/X(複製、貼上、剪下)以允許本地化行為,其他更精細的操作對於作業系統***怎麼檢查好

呢?

- Profiler: autoselect active target,fix for rare crash

<!-- section_title --&gt
<!-- 二級標題 --&gt

Profiler

自動選擇活動標頭,修復偶然崩潰問題

- Project Importer: new support for MSVC 7, 10

Project Importer:增加了對MSVC7和10的專案匯入功能的支援

- ThreadSearch: UI improvements

ThreadSearch:UI改進

- ToDo: more language independent, fixes annoying UI bugs

<!-- section_title --&gt
<!-- 二級標題 --&gt

ToDo

多語言獨立模式,修復了一些讓人惱火的UI問題

- Valgrind: added configuration panel, works better with CB projects, more output handling and support for valgrind features

Valgrind:增加了配置皮膚,CB專案工作將更好,更多valgrind關於輸出可以手動控制的特性

- wxSmith: support for many new widgets (including KWIC, ImagePanel, GridBagSizer), internationalization support, duplicate

IDs are allowed, tons of bug fixes

wxSmith:支援更多新的小工具(包括KWIC、ImagePanel、GridBagSizer),支援國際化,複製ID也已被允許,巨量的問題已修復

2010年05月23日,Code::Blocks (6271) 釋出,C++開發環境,

修正一個缺陷“高階選項”頁面的wxWidgets專案嚮導。(謝謝漢斯·亨瑞克為指向這個)

KeyBinder 1 0 49 2010/03/3:應用補丁2885年由易怒的

CppCheck外掛:切換到輸入檔案列表風格的新CppCheck(1.41)

構建SqPlus修復。

修正:編譯器警告——“警告:“dllimport”屬性忽視”

固定一臭蟲在linux上:外掛列表,應該被載入在批處理構建模式沒有儲存

cc:應用補丁透過所修復VC頭解析

答:一些程式碼清理,額外的除錯訊息

修正了在sqstdstring.cpp錯字

修復bug # 17097(經理皮膚不正確的行為),也改變了行為,得到如果接近所有標籤是活躍和關閉按鈕被單擊時,

CC:bug修復GetGCCCompilerDirs Archlinux失敗(由於所)

應用補丁為嚮導的預設編譯器錯誤(謝謝所)

CC:修復的記號賦予器::FixArgument“bug:支援跳過c++註釋(謝謝所)

CC:修復一個bug為“外來的”C + +”(謝謝所)

應用:[補丁# 2974]調整路徑閃爍在“plugin::ScriptedWizard”

應用:[補丁# 2969]到wxWidgets嚮導。

固定可能崩潰的候選人

應用:[補丁# 2977]wxSmith補丁,固定大小的最小預覽bug。

準備新標識。

2010年05月31日,Code::Blocks 10.05 釋出。

2012年11月25日,Code::Blocks 12.11 釋出。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7868752/viewspace-1774563/,如需轉載,請註明出處,否則將追究法律責任。

相關文章