欧美亚洲综合成人a∨在线,中文在线中文a,一二三四在线观看免费视频 ,在教室伦流澡到高潮h,亚洲综合性av私人影院

Gcc編譯器

下載地址

您的位置:首頁 > > 軟件下載 > 應用軟件 > 其它軟件 > Gcc下載
95.56%
4.44%

Gcc編譯器 V10.0綠色漢化版

gnc編譯器
  • 軟件介紹
  • 軟件截圖
  • 相關(guān)下載
軟件標簽:
GCC是一種廣泛使用的編譯器集合,其中包括C,C ++,Objective-C,F(xiàn)ortran,Ada和其他語言的編譯器。它最初由理查德·斯托曼(Richard Stallman)開發(fā),是自由軟件基金會(FSF)的一個項目。GCC具有許多功能,例如優(yōu)化代碼生成,多個平臺支持,多語言支持,自動向量化和調(diào)試支持。它是許多操作系統(tǒng)和軟件的標準編譯器,包括Linux,Unix,F(xiàn)reeBSD等。使用GCC編譯器可以生成目標代碼,靜態(tài)鏈接庫和共享對象,還可以執(zhí)行代碼分析和優(yōu)化。它還提供了許多命令行選項和編譯器插件來滿足多樣化的編譯要求。GCC編譯器是一種功能強大且廣泛使用的編譯器,可用于多種語言和平臺。

GCC 包括以下語言的編譯器

- C: 用于編寫系統(tǒng)級程序,驅(qū)動程序等。
- C++: 用于編寫面向?qū)ο蟮某绦?,如桌面應用程序,游戲等?br /> - Objective-C: 用于編寫 MacOS 和 iOS 中的應用程序。
- Fortran: 用于編寫科學計算應用程序。
- Ada: 用于編寫高可靠性的應用程序。
- D: 用于編寫高性能的系統(tǒng)應用程序。
- Go: 用于編寫并發(fā)應用程序。
- OpenMP: 用于基于內(nèi)核的并行編程。
GCC 還支持許多不同的目標平臺,包括 Linux、Windows、Mac OS X、Unix 等。

Gcc編譯器特點

- 字節(jié)碼: 可以將程序編譯為字節(jié)碼并在不同系統(tǒng)上運行。 - 全平臺: 可以在多個系統(tǒng)上使用,包括 Blackfin、IBM、SPARC、PowerPC 等。 - 模塊化: 可以方便地添加新模塊來擴展 GCC 的能力。 - 開放源代碼: 可以方便地進行修改和分發(fā)。
總之,GCC 是一種功能強大,可擴展,跨平臺的編譯器,適用于多種編程語言和目標平臺。 GCC(GNU Compiler Collection)是一款免費開源的編譯器集合,是GNU計劃的一部分。它被廣泛應用于各種平臺上的軟件開發(fā)和編譯工作中,包括嵌入式系統(tǒng),桌面應用程序,服務(wù)器應用程序,游戲開發(fā)等領(lǐng)域。

GCC編譯器特點

1.免費開源:GCC是免費開源的,任何人都可以免費下載、使用和修改它。這使得它在軟件開發(fā)領(lǐng)域中廣泛應用。
2.跨平臺:GCC可以在多種操作系統(tǒng)和平臺上運行,包括Linux、Windows、Mac OS X、BSD、Solaris等。開發(fā)人員只需要下載適合自己操作系統(tǒng)的版本即可輕松編譯程序。
3.支持多種編程語言:GCC支持多種編程語言,包括C、C++、Java、Objective-C等。這使得開發(fā)人員可以使用一款編譯器集合,開發(fā)各種類型的應用程序。
4.高質(zhì)量代碼生成:GCC通過使用現(xiàn)代優(yōu)化算法和優(yōu)化技術(shù),生成高質(zhì)量的機器代碼。這使得編譯出的程序在執(zhí)行速度和占用內(nèi)存等方面都有很好的表現(xiàn)。
5.可擴展性:GCC具有很高的可擴展性,使用插件和擴展可以實現(xiàn)更多的功能。它還可以與其他工具和庫集成,如gdb、strace等。

GCC編譯器功能

1.編譯C程序:GCC可以編譯C程序,生成可執(zhí)行文件或庫文件。
2.編譯C++程序:GCC可以編譯C++程序,生成可執(zhí)行文件或庫文件。
3.編譯Objective-C程序:GCC可以編譯Objective-C程序,生成可執(zhí)行文件或庫文件。
4.編譯Java程序:GCC可以編譯Java程序,生成Java字節(jié)碼文件。
5.調(diào)試程序:GCC集成了gdb調(diào)試工具,可以在編譯期間生成調(diào)試信息,方便開發(fā)人員進行程序調(diào)試。
6.生成匯編代碼:GCC可以生成匯編代碼,方便了解代碼內(nèi)部運行機制和優(yōu)化情況。
7.優(yōu)化程序:GCC通過使用優(yōu)化技術(shù)可以生成高質(zhì)量的目標代碼,提高程序的執(zhí)行效率和優(yōu)化程度。

安裝教程

一、安裝了MinGW,在其根目錄下的bin文件夾中發(fā)現(xiàn)有等文件。為了測試,在該文件夾中新建了一個test.bat文件,將其中內(nèi)容寫為:gcc test.cpp
二、在該文件夾中創(chuàng)建test.cpp文件并將其內(nèi)容設(shè)置為:
1.雙擊test.bat文件,發(fā)現(xiàn)該文件夾中產(chǎn)生了一個a.exe文件,執(zhí)行該exe文件,發(fā)現(xiàn)其與預期編譯效果一致,說明編譯成功。gcc –o name test.cpp
2.可以生成名為name.exe的可執(zhí)行程序
3.把指令改為gcc –e test.cpp >test.txt 后,提示錯誤gcc: no input files
4.而把參數(shù)E改為大寫之后問題即解決:gcc –E test.cpp > test.txt

使用方法

一、Gcc編譯器常用選項
1.編譯選項
gcc有超過100個的編譯選項可用。具體的可以使用命令man gcc察看
2.優(yōu)化選項
用GCC編譯C/C++代碼時,它會試著用最少的時間完成編譯并且編譯后的代碼易于調(diào)試。易于調(diào)試意味著編譯后的代碼與源代碼有同樣的執(zhí)行順序,編譯后的代碼沒有經(jīng)過優(yōu)化。有很多的選項可以告訴GCC在耗費更多編譯時間和犧牲易調(diào)試性的基礎(chǔ)上產(chǎn)生更小更快的可執(zhí)行文件。這些選項中最典型的就是-O和-O2。-O選項告訴gcc對源代碼進行基本優(yōu)化。-O2選項告訴GCC產(chǎn)生盡可能小的和盡可能快的代碼。還有一些很特殊的選項可以通過man gcc察看
3.調(diào)試和剖析選項
GCC支持數(shù)種調(diào)試剖析選項。在這些選項中最常用的是-g和-pg.-g選項告訴gcc產(chǎn)生能被GNU調(diào)試器(如gdb)使用的調(diào)試信息,以便調(diào)試用戶的程序。-pg選項告訴gcc在用戶的程序中加入額外的代碼,執(zhí)行時,產(chǎn)生gprof用的剖析信息以顯示程序的耗時情況
二、使用GDB方法
1.在命令行中鍵入gdb并按回車就可以運行g(shù)db了,啟動gdb后,能在命令行上制定很多的選項,也可以下面的方式來運行g(shù)db: gdb filename 用這種方式運行g(shù)db時,能直接指定想要調(diào)試的程序。在命令行上健入gdb -h得到一個有關(guān)gdb的選項的說明簡單列表
2.編譯代碼以供調(diào)試,為了使gdb工作,必須使程序在編譯時包含調(diào)試信息,調(diào)試信息包含程序里的每個變量的類型,在可執(zhí)行文件里的地址映射以及源代碼的行號。gdb利用這些信息使源代碼和機器碼相關(guān)聯(lián)
三、內(nèi)容錯誤查找
1.運行 gdb bugging 命令,裝入 bugging 可執(zhí)行文件
2.執(zhí)行裝入的 bugging 命令
3.使用 where 命令查看程序出錯的地方
4.利用 list 命令查看調(diào)用 gets 函數(shù)附近的代碼
5.唯一能夠?qū)е?gets 函數(shù)出錯的因素就是變量string,用print命令查看string的值
6.在 gdb 中,我們可以直接修改變量的值,只要將 string 取一個合法的指針值就可以了,為此,我們在第11行處設(shè)置斷
7.程序重新運行到第11行處停止,這時,我們可以用 set variable 命令修改 string 的取值
8.然后繼續(xù)運行,將看到正確的程序運行結(jié)果

使用示例

一、示例代碼
int main(void)
{printf("hello\n")
 return 0
二、預編譯過程
1.這個過程處理宏定義和include,并做語法檢查
2.可以看到預編譯后,代碼從6行擴展到了910行
三、編譯過程
這個階段,生成匯編代碼
四、匯編過程
1.這個階段,生成目標代碼
2.此過程生成ELF格式的目標代碼
五、鏈接過程
鏈接過程。生成可執(zhí)行代碼。鏈接分為兩種,一種是靜態(tài)鏈接,另外一種是動態(tài)鏈接。使用靜態(tài)鏈接的好處是,依賴的動態(tài)鏈接庫較少,對動態(tài)鏈接庫的版本不會很敏感,具有較好的兼容性;缺點是生成的程序比較大。使用動態(tài)鏈接的好處是,生成的程序比較小,占用較少的內(nèi)存
六、程序運行
七、以hello.c為例子,在這四個步驟中可以設(shè)置選項分別生成hello.i, hello.s, hello.o以及最終的hello文件:
hello.c: 最初的源代碼文件
hello.i: 經(jīng)過編譯預處理的源代碼
hello.s: 匯編處理后的匯編代碼
hello.o: 編譯后的目標文件,即含有最終編譯出的機器碼,但它里
面所引用的其他文件中函數(shù)的內(nèi)存位置尚未定義
hello / a.out: 最終的可執(zhí)行文件

 

文件類型

.c為后綴的文件,C語言源代碼文件
.a為后綴的文件,是由目標文件構(gòu)成的檔案庫文件
.C,.cc或.cxx 為后綴的文件,是C++源代碼文件且必須要經(jīng)過預處理
.h為后綴的文件,是程序所包含的頭文件
.i 為后綴的文件,是C源代碼文件且不應該對其執(zhí)行預處理
.ii為后綴的文件,是C++源代碼文件且不應該對其執(zhí)行預處理
.m為后綴的文件,是Objective-C源代碼文件
.mm為后綴的文件,是Objective-C++源代碼文件
.o為后綴的文件,是編譯后的目標文件
.s為后綴的文件,是匯編語言源代碼文件
.S為后綴的文件,是經(jīng)過預編譯的匯編語言源代碼文件

 

執(zhí)行程序

1、Pre-Processing預處理
gcc  -E  hello.c  -o  hello.i //完成頭文件和宏定義的展開,生成hello.i預處理文件
2、Compiling編譯
gcc  -S  hello.i //生成匯編代碼,生成hello.s的匯編文件
3、Assembling  匯編
gcc  -c  hello.s //生成二進制目標文件,生成hello.o文件
4、Linking 鏈接
gcc  hello.o  -o  hello //鏈接相關(guān)庫,生成可執(zhí)行文件hello,沒有后綴
PS:一般生成可執(zhí)行程序,可以直接:gcc  hello.c  -o  hello

命令

在gdb提示符處鍵入help,將列出命令的分類,主要的分類有:
aliases:命令別名
breakpoints:斷點定義
data:數(shù)據(jù)查看
files:指定并查看文件
internals:維護命令
running:程序執(zhí)行
stack:調(diào)用棧查看
statu:狀態(tài)查看
tracepoints:跟蹤程序執(zhí)行
鍵入help后跟命令的分類名,可獲得該類命令的詳細清單:
break NUM 在指定的行上設(shè)置斷點
bt 顯示所有的調(diào)用棧幀。該命令可用來顯示函數(shù)的調(diào)用順序
clear 刪除設(shè)置在特定源文件、特定行上的斷點。其用法為:clear FILENAME:NUM
continue 繼續(xù)執(zhí)行正在調(diào)試的程序。該命令用在程序由于處理信號或斷點而導致停止運行時
display EXPR 每次程序停止后顯示表達式的值。表達式由程序定義的變量組成
file FILE 裝載指定的可執(zhí)行文件進行調(diào)試
help NAME 顯示指定命令的幫助信息
info break 顯示當前斷點清單,包括到達斷點處的次數(shù)等
info files 顯示被調(diào)試文件的詳細信息
info func 顯示所有的函數(shù)名稱
info local 顯示當函數(shù)中的局部變量信息
info prog 顯示被調(diào)試程序的執(zhí)行狀態(tài)
info var 顯示所有的全局和靜態(tài)變量名稱
kill 終止正被調(diào)試的程序
list 顯示源代碼段
make 在不退出 gdb 的情況下運行 make 工具
next 在不單步執(zhí)行進入其他函數(shù)的情況下,向前執(zhí)行一行源代碼
print EXPR 顯示表達式 EXPR 的值

處理器架構(gòu)

Alpha
ARM
Atmel AVR
Blackfin
H8/300
IA-32〈x86〉 與x86-64
IA-64例如:Itanium
MorphoSys 家族
Motorola 68000
Motorola 88000
MIPS
PA-RISC
PDP-11
PowerPC
System/370,System/390
SuperH
HC12
SPARC
VAX
Renesas R8C/M16C/M32C家族
A29K
ARC
C4x
CRIS
D30V
DSP16xx
FR-30
FR-V
Intel i960
IP2000
M32R
68HC11
MCORE
MMIX
MN10200
MN10300
NS32K
ROMP
Stormy16
V850
Xtensa
D10V
MicroBlaze
PDP-10
MSP430
Z8000

GCC編譯器亮點

1.靈活的交叉編譯:GCC可以進行交叉編譯,從一個平臺往不同的平臺生成可執(zhí)行文件或庫文件,具有很高的靈活性。
2.生成優(yōu)化代碼:GCC支持很多優(yōu)化選項,可以生成效率更高的目標代碼,提升程序的性能。
3.開源、免費并且具有適用性:GCC是免費的開源軟件,適用于各種操作系統(tǒng)和編程語言,受到廣泛的認可和使用。
4.支持重定位:GCC可以支持可執(zhí)行文件或庫文件中的symbol重定位,在軟件的開發(fā)和維護過程中更加靈活。
5.優(yōu)秀的兼容性:GCC支持標準C和C++語法,支持大多數(shù)的平臺和操作系統(tǒng),使用libtool、autoconf和automake工具可以方便的使用編譯和構(gòu)建自己的代碼。
6.高質(zhì)量的生成代碼:GCC可以根據(jù)硬件架構(gòu)和指令集生成高質(zhì)量的目標代碼,保證編程的高效性。

更新日志

Gcc編譯器 v10.0更新內(nèi)容
1、帶來了一組關(guān)于鏈接時優(yōu)化 (LTO) 框架可提升伸縮性和降低內(nèi)存使用
2、在64位系統(tǒng)上需要8G內(nèi)存來對Firefox進行優(yōu)化,然而用了LTO后只需3G
3、支持更多C++11標準,包括原子性、C++11 內(nèi)存模型,用戶定義文字、別名聲明、構(gòu)造器委派和可擴展的語法等
4、改進對 Fortran 的支持
5、支持Google Go 1等等多項改進
6、進一步加強了對已C++11的支持

以上便是KKX小編給大家分享的Gcc編譯器,這款GCC編譯器是一款功能強大的編譯器集合,具有廣泛的適用性和靈活性,可以幫助開發(fā)人員快速地編寫各種類型的應用程序,是軟件開發(fā)過程中不可或缺的工具。

Gcc編譯器 V10.0綠色漢化版

普通下載地址:
本地普通下載
本地電信下載
浙江移動下載
北京聯(lián)通下載

相關(guān)下載

精選軟件

Thunderbird正式版

Thunderbird正式版