當前位置:首頁 » 編程軟體 » linux只是一個編譯器

linux只是一個編譯器

發布時間: 2022-11-29 04:55:40

linux 下如何裝 C 編譯

2004年4月20日最新版本的GCC編譯器3.4.0發布了。目前,GCC可以用來編譯C/C++、FORTRAN、java、OBJC、ADA等語言的程序,可根據需要選擇安裝支持的語言。GCC 3.4.0比以前版本更好地支持了C++標准。本文以在Redhat Linux上安裝GCC3.4.0為例,介紹了GCC的安裝過程。

安裝之前,系統中必須要有cc或者gcc等編譯器,並且是可用的,或者用環境變數CC指定系統上的編譯器。如果系統上沒有編譯器,不能安裝源代碼形式的GCC 3.4.0。如果是這種情況,可以在網上找一個與你系統相適應的如RPM等二進制形式的GCC軟體包來安裝使用。本文介紹的是以源代碼形式提供的GCC軟體包的安裝過程,軟體包本身和其安裝過程同樣適用於其它Linux和Unix系統。

系統上原來的GCC編譯器可能是把gcc等命令文件、庫文件、頭文件等分別存放到系統中的不同目錄下的。與此不同,現在GCC建議我們將一個版本的GCC安裝在一個單獨的目錄下。這樣做的好處是將來不需要它的時候可以方便地刪除整個目錄即可(因為GCC沒有uninstall功能);缺點是在安裝完成後要做一些設置工作才能使編譯器工作正常。在本文中我採用這個方案安裝GCC 3.4.0,並且在安裝完成後,仍然能夠使用原來低版本的GCC編譯器,即一個系統上可以同時存在並使用多個版本的GCC編譯器。

按照本文提供的步驟和設置選項,即使以前沒有安裝過GCC,也可以在系統上安裝上一個可工作的新版本的GCC編譯器。

1. 下載

在GCC網站上( http://gcc.gnu.org/)或者通過網上搜索可以查找到下載資源。目前GCC的最新版本為 3.4.0。可供下載的文件一般有兩種形式:gcc-3.4.0.tar.gz和gcc-3.4.0.tar.bz2,只是壓縮格式不一樣,內容完全一致,下載其中一種即可。

2. 解壓

根據壓縮格式,選擇下面相應的一種方式解包(以下的「%」表示命令行提示符):

% tar xzvf gcc-3.4.0.tar.gz
或者
% bzcat gcc-3.4.0.tar.bz2 | tar xvf -

新生成的gcc-3.4.0這個目錄被稱為源目錄,用${srcdir}表示它。以後在出現${srcdir}的地方,應該用真實的路徑來替換它。用pwd命令可以查看當前路徑。

在${srcdir}/INSTALL目錄下有詳細的GCC安裝說明,可用瀏覽器打開index.html閱讀。

3. 建立目標目錄

目標目錄(用${objdir}表示)是用來存放編譯結果的地方。GCC建議編譯後的文件不要放在源目錄${srcdir]中(雖然這樣做也可以),最好單獨存放在另外一個目錄中,而且不能是${srcdir}的子目錄。

例如,可以這樣建立一個叫 gcc-build 的目標目錄(與源目錄${srcdir}是同級目錄):

% mkdir gcc-build
% cd gcc-build

以下的操作主要是在目標目錄 ${objdir} 下進行。

4. 配置

配置的目的是決定將GCC編譯器安裝到什麼地方(${destdir}),支持什麼語言以及指定其它一些選項等。其中,${destdir}不能與${objdir}或${srcdir}目錄相同。

配置是通過執行${srcdir}下的configure來完成的。其命令格式為(記得用你的真實路徑替換${destdir}):

% ${srcdir}/configure --prefix=${destdir} [其它選項]

例如,如果想將GCC 3.4.0安裝到/usr/local/gcc-3.4.0目錄下,則${destdir}就表示這個路徑。

在我的機器上,我是這樣配置的:

% ../gcc-3.4.0/configure --prefix=/usr/local/gcc-3.4.0 --enable-threads=posix --disable-checking --enable--long-long --host=i386-redhat-linux --with-system-zlib --enable-languages=c,c++,java

將GCC安裝在/usr/local/gcc-3.4.0目錄下,支持C/C++和JAVA語言,其它選項參見GCC提供的幫助說明。

5. 編譯

% make

這是一個漫長的過程。在我的機器上(P4-1.6),這個過程用了50多分鍾。

6. 安裝

執行下面的命令將編譯好的庫文件等拷貝到${destdir}目錄中(根據你設定的路徑,可能需要管理員的許可權):

% make install

至此,GCC 3.4.0安裝過程就完成了。

6. 其它設置

GCC 3.4.0的所有文件,包括命令文件(如gcc、g++)、庫文件等都在${destdir}目錄下分別存放,如命令文件放在bin目錄下、庫文件在lib下、頭文件在include下等。由於命令文件和庫文件所在的目錄還沒有包含在相應的搜索路徑內,所以必須要作適當的設置之後編譯器才能順利地找到並使用它們。

6.1 gcc、g++、gcj的設置

要想使用GCC 3.4.0的gcc等命令,簡單的方法就是把它的路徑${destdir}/bin放在環境變數PATH中。我不用這種方式,而是用符號連接的方式實現,這樣做的好處是我仍然可以使用系統上原來的舊版本的GCC編譯器。

首先,查看原來的gcc所在的路徑:

% which gcc

在我的系統上,上述命令顯示:/usr/bin/gcc。因此,原來的gcc命令在/usr/bin目錄下。我們可以把GCC 3.4.0中的gcc、g++、gcj等命令在/usr/bin目錄下分別做一個符號連接:

% cd /usr/bin
% ln -s ${destdir}/bin/gcc gcc34
% ln -s ${destdir}/bin/g++ g++34
% ln -s ${destdir}/bin/gcj gcj34

這樣,就可以分別使用gcc34、g++34、gcj34來調用GCC 3.4.0的gcc、g++、gcj完成對C、C++、JAVA程序的編譯了。同時,仍然能夠使用舊版本的GCC編譯器中的gcc、g++等命令。

6.2 庫路徑的設置

將${destdir}/lib路徑添加到環境變數LD_LIBRARY_PATH中,最好添加到系統的配置文件中,這樣就不必要每次都設置這個環境變數了。

例如,如果GCC 3.4.0安裝在/usr/local/gcc-3.4.0目錄下,在RH Linux下可以直接在命令行上執行或者在文件/etc/profile中添加下面一句:

setenv LD_LIBRARY_PATH /usr/local/gcc-3.4.0/lib:$LD_LIBRARY_PATH

7. 測試

用新的編譯命令(gcc34、g++34等)編譯你以前的C、C++程序,檢驗新安裝的GCC編譯器是否能正常工作。

8. 根據需要,可以刪除或者保留${srcdir}和${objdir}目錄。

② LINUX是什麼意思

什麼是Linux

Linux 通常被認為是一套操作系統,實際上它是一系列Linux內核基礎上開發的操作系統的總稱。

Linux 怎麼讀

對於Linux這個英文單詞,中國人的發音各式各樣,有的讀作[ˈlɪnɪks](」李尼克斯「),有的讀作[ˈlinju:ks](「李紐克斯」),有的讀作[ˈlɪnəks](「李呢克斯」)。官方給出的標准發音為['li:nэks],寫成中文就是「李呢克斯」。

其實我見過很多人,有很多不同的讀法,其實不用過度糾結讀音問題。

Linux 的由來

要說Linux必須先說說Unix, Linux誕生之前,先有的Unix,因為Unix並非免費開源的,用必須買授權之類的,很少人承擔的起。

在1983年,理查德·斯托曼創建了一個自由軟體,類Unix,與POSIX兼容的操作系統為目標的GNU計劃。作為這個計劃其中的一部分,他又寫了GNU通用公共許可證(GPL)。

GNU計劃發起後,有很多支持者,所以在這期間產生了許多非常棒的軟體,但遺憾的是,一直沒有一個比較完美的操作系統出現。直到1991年,芬蘭大學生林納斯•本納第克特•托瓦茲(Linus Benedict Torvalds)基於興趣開發了一個類Unix操作系統,一經發布便得到了廣大愛好者的追捧,這個系統就是Linux。

名稱的由來

Linus Torvalds本要把他的發時叫做Freax——「fread」,「free」和「x」(暗指Unix)的合成詞。在開發系統的前半年裡,他把文件以文件名「Freax」存儲。Torvalds考慮過Linux這個名字,但是因為覺得它過於自我本位而放棄了使用它。

為便於開發,在1991年9月,他把那些文件上傳到了赫爾辛基工業大學(HUT)的ftp伺服器(ftp.funet.fi)。Torvalds在HUT負責管理那個伺服器的同事Ari Lemmke,覺得「Freax」這個名字不是很好,就在不咨詢Torvalds的情況下,把項目的名字改成了「Linux」。但是之後,Torvalds也同意「Linux」這個名字了:「經過多次討論,他承認Linux這個名字更好。在0.01版本Linux的源代碼的makefile里仍然使用『Freax'這個名字,在之後『Linux'這個名字才被使用。所以,Linux這個名字並不是預先想好的,只是它被廣泛接受了而已

Linux吉祥物

1996年,Torvalds為Linux選定了企鵝作為它的吉祥物,這就是很多時候看Linux相關書籍的時候,會有個企鵝的原因了

Linux操作系統

以上就是對Linux概念的簡介。溫故而知新,我最近打算開始將Linux基本指令開始重新梳理一下,如果你也想跟我一塊兒回顧下,別忘了關注下,咱們一起回憶,一起進步。

③ Linux下,有圖形界面的編譯器嗎

看你用什麼編程語言了?下面是十個傑出的開源開發工具,它們將幫你提升開發效率。
1、Bluefish
Bluefish是進行Web開發時最受歡迎的IDE之一。它能夠處理編程和標記語言,但是該工具的重點用途在於創建動態和互動式網站。和許多 Linux應
用程序一樣,Bluefish是一個輕量級工具,運行速度非常快,它所佔據的資源只有同類工具的30%到40%。Bluefish可以一次打開多個文檔
(最高可打開3500個文檔)。它包含項目支持、遠程文件支持、搜索和替換(包括正則表達式),無限撤消/重做、多語言定製語法高亮、窗口反斜線文本和多
編碼支持等功能。
Bluefish最漂亮的功能之一是用戶定義工具欄Quickba,它可以讓你通過「右鍵點擊並選擇增加到
Quickbar」的方式來增加按鈕。你可以增加任意HTML工具欄按鈕到Quickbar上。Bluefish還有許多操作簡化工具,可以幫助你增加不
同元素到你的代碼中。需要一個 DHTML自動提交選擇框?簡單。從DHTML下拉列表中選擇「自動提交選擇框(Auto-submit Select
Box )」,然後填充必要的條目,就可以增加該元素到你的代碼中。Bluefish有針對C、Apache、DHTML、DocBook、HTML、
PHP+HTML和SQL的智能向導。如果是手動開發自己的網站,你應該選擇使用Bluefish這個工具。
該工具主頁:http://bluefish.openoffice.nl/
2、Anjuta
Anjuta是一個免費的開源C和C++開發工具。
它的安裝非常簡單(在Mandriva上使用urpmi
anjuta命令),提供項目管理、應用程序向導、互動式調試器、一個強大的源代碼編輯器(支持源瀏覽、代碼完成和語法高亮功能)。Anjuta團隊開發
的這個強大IDE非常易於使用,而且可以滿足你的C和C++編程需求。
Anjuta具有一個靈活而強大的用戶界面,讓你可以在布局界面中拖拽工具來安排圖形用
戶界面,使其與你希望的設計最接近。而且每一個用戶配置的布局對一個項目來說是可以持續生存的(因此你可以為每一個項目使用不同的布局)。Anjuta還
具有一個強大的插件系統,通過它你可以選擇激活或關閉哪一個插件。而且與所有開源項目一樣,你可以為Anjuta開發滿足你自己需求的插件。在
Anjuta應用程序中最大的工具之一是項目管理器。這個工具幾乎可以打開任何基於automake/autoconf的項目。這個項目管理器不會增加任
何基於Anjuta的信息到這個項目中,因此在Anjuta之外,你的項目同樣可以被維護和開發。
該工具的主頁:http://anjuta.sourceforge.net/
3、Glade
Glade是一個GNOME桌面環境下用於開發GTK+的RAD(迅速應用開發)工具。它的界面與GIMP非常類似,可以被用戶進行定製化,甚至可以被嵌入到Anjuta中。
Glade包含許多界面創建控制項,諸如文本框、對話標簽、數字輸入框和菜單等,讓你可以更快速的開發界面。界面設計以XML格式存儲,從而讓這些設計可以被輕松的應用於外部工具中。
安裝Glade的過程非常簡單。舉例來說,如果你使用Fedora操作系統,你可以使用命令「yum install glade3」來啟動安裝。Glade不像Anjuta一樣具有一個強大的項目管理器,但是你可以在Glade中創建、編輯和保存項目。
該工具的主頁:http://glade.gnome.org/
4、GCC
GCC是一個GNU編譯器,支持C、C++、Objective-C、FORTRAN、Java和Ada等語言。它是一個命令行工具。

最常見的用途是作為C和C++代碼的編譯器。你可能會有疑問,一個工具如何編譯不同語言的代碼?非常簡單:對於C來說,你調用「gcc」命令,而對於
C++來說,你調用「g++」命令。兩個編譯器在同一套工具集中。而且g++是一個編譯器,而不僅僅是一個預處理器。它可以直接從源代碼創建目標代碼,而
無需使用一個中介首先從C++代碼創建C代碼。這樣可以創建更好的目標代碼,而且讓你掌握更好的調試信息。
該工具的主頁:http://gcc.gnu.org/
5、Kdevelop
Kdevelop創建於1998年,是一個非常易用的KDE桌面環境IDE。Kdevelop目前在GPL下發布,可以免費使用。
它是基於插件的,因此你可以通過增加和移除插件,來創建最適合你需要的功能。Kdevelop還支持描述性檔案(profile)功能,因此不同設置的插件可以與特定項目關聯在一起。

Kdevelop支持15種編程語言,對每一種語言有其特定的功能。Kdevelop還提供一個內置調試器、版本控制系統
(Subversion)、應用程序向導、文檔查看器、代碼段工具(code
snippets)、集成Doxygen、RADio工具、支持Ctags、代碼格式重定、QuickOpen支持和停靠窗口和工具欄等功能。
Kdevelop最好的地方之一是,它替用戶完成了眾多底層的任務。不斷處理make、automake和configure操作是一件令人討厭的事情。
任何好程序員應該知道這些工具,Kdevelop包含了一個Automake管理器,簡化了它們的使用。該工具另一個好用的功能是,該編譯器的輸出窗口是
彩色的,因此你可以很容易的立刻看到錯誤、警告和信息之間的區別。
6、GDB
嚴格來
說,GDB算不上一個開發者工具,不過它是多數*NIX開發者必備的工具之一。GDB就是GNU調試器。這個工具從命令行中啟動,讓開發者可以立即獲得來
自另一個被執行的程序的即時反饋。如果你要創建、完成和發布一個應用程序,可能需要了解問題所在。為了幫助你發現這些問題,你可以從
gdb工具中啟動這個程序,它將幫助你發現問題所在。通過GDB你可以完成如下任務:
·按照影響應用程序行為的指定參數、開關或輸入來啟動它;
·針對特定行為終止應用程序執行;
·當你的應用程序停止時檢查發生的事情;
·修改應用程序,迅速進行測試。
在處理漏洞報告時,GDB也非常好用。
該工具的主頁:http://www.gnu.org/software/gdb/
7、KompoZer
KompZer是一個易用的所見即所得(WYS/WYG)Web開發工具,其目標用戶是希望創建一個專業Web站點,而又不想了解HTML的非技術用戶。
KompoZer具有眾多亮點功能。其中最強大的一點就是可以通過一個URL打開、編輯和上傳一個網站。這個功能讓你可以無需編輯HTML就可以簡單的對網站進行更新。當然,前提是你必須具有網站的上傳許可權。在使用其它網站作為模板時,這個功能也非常有用。
你不能把KompoZer看作一個只適合初學者的工具。它是微軟FrontPage和Adobe Dreamweaver的免費開源替代產品。和其競爭產品一樣,KompoZer可以通過點擊一個標簽就實現代碼編輯和預覽界面的切換。
該工具的主頁:http://www.kompozer.net/
8、Eclipse
Eclipse是一個Java語言編寫的多語言支持的IDE,它具有一個豐富的插件系統,讓你可以對其進行功能擴展。平均每月被下載的次數超過100萬次,Eclipse是當今軟體開發領域最強大的工具之一。實際上,Eclipse是開源開發的事實標准。
Eclipse最強大的地方或許在於其插件功能。在支持編程語言方面,Eclipse號稱擁有高達58個插件。基於這個功能豐富的開發環境,Eclipse擁有一個巨大的開發者社區,而且很多機構都提供該IDE的培訓,甚至在有的大學里將其列為課程之一。
該工具的主頁:http://www.eclipse.org/
9、Make
Make是一個Linux工具,可以自動判斷大型程序的哪一部分需要被編譯。一旦判斷出哪些需要被編譯後,它將運行必要的命令來完成這個操作。當從源代碼安裝應用程序時,經常會用到Make,因此開源應用程序開發者應該對Make工具有比較深入的了解,明白如何使用它。

如果你計劃開發一個需要從源代碼安裝的應用程序,你需要知道如何軟體一個makefile。這個makefile描述了你應用程序中不同文件之間的關
系,並且包含了需要拼合在一起的聲明。如果你熟悉應用程序安裝的話,你會了解這個命令:./configure;make;make install。
10、Quanta Plus
與Kompozer類似,Quanta Plus也是一個HMTL開發工具。Quanta Plus支持所見即所得(WYSIWYG),也支持代碼處理,它支持HTML、XHTML、CSS、XML(以及基於XML的語言)和PHP。

Quanta
Plus的特色功能包括快速標簽完成、項目管理、實時預覽、PHP調試器、CVS支持和子版本支持(需要插件支持)。相對來說,Kompozer的主要目
標用戶是那些非技術專業用戶,而Quanta Plus則是針對那些希望有一個好的所見即所得編輯器的技術型用戶。
該工具的主頁:http://quanta.kdewebdev.org/

④ linux的make命令是一個編譯器么它課可以編譯什麼語言

make不是編譯器,它可以根據預定義的參數來執行訂制的編譯過程,在這個過程中是要依靠外部編譯器的,比如linux中的gcc集

⑤ Linux到底是一個什麼樣的操作系統

簡單地說,Linux是一套免費使用和自由傳播的類Unix操作系統,它主要用於基於Intel x86系列CPU的計算機上。這個系統是由全世界各地的成千上萬的程序員設計和實現的。其目的是建立不受任何商品化軟體的版權制約的、全世界都能自由使用的Unix兼容產品。

Linux的出現,最早開始於一位名叫Linus Torvalds的計算機業余愛好者,當時他是芬蘭赫爾辛基大學的學生。他的目的是想設計一個代替Minix(是由一位名叫Andrew Tannebaum的計算機教授編寫的一個操作系統示教程序)的操作系統,這個操作系統可用於386、486或奔騰處理器的個人計算機上,並且具有Unix操作系統的全部功能,因而開始了Linux雛形的設計。

Linux以它的高效性和靈活性著稱。它能夠在PC計算機上實現全部的Unix特性,具有多任務、多用戶的能力。Linux是在GNU公共許可許可權下免費獲得的,是一個符合POSIX標準的操作系統。Linux操作系統軟體包不僅包括完整的Linux操作系統,而且還包括了文本編輯器、高級語言編譯器等應用軟體。它還包括帶有多個窗口管理器的X-Windows圖形用戶界面,如同我們使用Windows NT一樣,允許我們使用窗口、圖標和菜單對系統進行操作。

Linux之所以受到廣大計算機愛好者的喜愛,主要原因有兩個,一是它屬於自由軟體,用戶不用支付任何費用就可以獲得它和它的源代碼,並且可以根據自己的需要對它進行必要的修改,無償對它使用,無約束地繼續傳播。另一個原因是,它具有Unix的全部功能,任何使用Unix操作系統或想要學習Unix操作系統的人都可以從Linux中獲益。

由於Linux是一套具有Unix全部功能的免費操作系統,它在眾多的軟體中佔有很大的優勢,為廣大的計算機愛好者提供了學習、探索以及修改計算機操作系統內核的機會。

操作系統是一台計算機必不可少的系統軟體,是整個計算機系統的靈魂。一個操作系統是一個復雜的計算機程序集,它提供操作過程的協議或行為准則。沒有操作系統,計算機就無法工作,就不能解釋和執行用戶輸入的命令或運行簡單的程序。大多數操作系統都是由一些主要的軟體公司支持的商品化程序,用戶只能有償使用。如果用戶購買了一個操作系統,他就必須滿足供應商所要求的一切條件。因為操作系統是系統程序,用戶不能擅自修改或試驗操作系統的內核。這對於廣大計算機愛好者來說無疑是一種束縛。

要想發揮計算機的作用,僅有操作系統還不夠,用戶還必須要有各種應用程序的支持。應用程序是用於處理某些工作(如字處理)的軟體包,通常它也只能有償使用。每個應用程序的軟體包都為特定的操作系統和機器編寫。使用者無權修改這些應用程序。使用Linux,可以將操作系統變成一種操作環境。

由於Linux是一套自由軟體,用戶可以無償地得到它及其源代碼,可以無償地獲得大量的應用程序,而且可以任意地修改和補充它們。這對用戶學習、了解Unix操作系統的內核非常有益。 學習和使用Linux,能為用戶節省一筆可觀的資金。Linux是目前惟一可免費獲得的、為PC機平台上的多個用戶提供多任務、多進程功能的操作系統,這是人們要使用它的主要原因。就PC機平台而言,Linux提供了比其他任何操作系統都要強大的功能,Linux還可以使用戶遠離各種商品化軟體提供者促銷廣告的誘惑,再也不用承受每過一段時間就升級之苦,因此,可以節省大量用於購買或升級應用程序的資金。

Linux不僅為用戶提供了強大的操作系統功能,而且還提供了豐富的應用軟體。用戶不但可以從Internet上下載Linux及其源代碼,而且還可以從Internet上下載許多Linux的應用程序。可以說,Linux本身包含的應用程序以及移植到Linux上的應用程序包羅萬象,任何一位用戶都能從有關Linux的網站上找到適合自己特殊需要的應用程序及其源代碼,這樣,用戶就可以根據自己的需要下載源代碼,以便修改和擴充操作系統或應用程序的功能。這對Windows NT、Windows98、MS-DOS或OS/2等商品化操作系統來說是無法做到的。

Linux為廣大用戶提供了一個在家裡學習和使用Unix操作系統的機會。盡管Linux是由計算機愛好者們開發的,但是它在很多方面上是相當穩定的,從而為用戶學習和使用目前世界上最流行的Unix操作系統提供了廉價的機會。現在有許多CD-ROM供應商和軟體公司(如RedHat和TurboLinux)支持Linux操作系統。Linux成為Unix系統在個人計算機上的一個代用品,並能用於替代那些較為昂貴的系統。因此,如果一個用戶在公司上班的時候在Unix系統上編程,或者在工作中是一位Unix的系統管理員,他就可以在家裡安裝一套Unix的兼容系統,即Linux系統,在家中使用Linux就能夠完成一些工作任務

⑥ 嵌入式linux應用程序通常用什麼編譯器編譯

Linux有一系列功能強大的編譯器:vi、emace是屏幕互動式編譯器,GNU CC是GNU項目中符合ANSI C標準的編譯系統。

vi命令是Linux下全屏幕文本編輯,雖然這個編譯器特簡陋,對於初學者來說不是很友好,但是在Linux中vi的作用非常大。

主要的三種模式:命令模式、輸入模式、末行模式。

掌握這三種模式十分重要:

命令模式:vi啟動後默認進入的是命令模式,從這個模式使用命令可以切換到另外兩種模式,同時無論在任何模式下只要按一下[Esc]鍵都可以返回命令模式。在命令模式中輸入字幕「i」就可以進入vi的輸入模式編輯文件。

輸入模式:在這個模式中我們可以編輯、修改、輸入等編輯工作,在編輯器最後一行顯示一個「--INSERT--」標志著vi進入了輸入模式。當我們完成修改輸入等操作的時候我們需要保存文件,這時我們需要先返回命令模式,在進入末行模式保存。

末行模式:在命令模式輸入「:」即可進入該模式,在末行模式中有好多好用的命令。

vim是vi編輯器的改進版本,在vi編譯的基礎上擴展了很多實用的功能。

至於vi/vim的命令就不給大家介紹了,我們在日常實際的使用之中隨著積累都會掌握。

⑦ Linux操作系統中默認安裝的C語言編譯系統是

Linux操作系統中默認安裝的C語言編譯系統是GCC(GNU Compiler Collection),是Linux下最常用的C語言編譯器,是GNU項目中符合ANSI,C標準的編譯系統,能夠編譯用C、Object C等語言編寫的程序。

同時它可以通過不同的前端模塊來支持各種語言,如Java、Fortran、Pascal、Mola,3和Ada等。

C語言的標准

1.1 K,RC

1973年,Dennis M Ritchie設計和實現了C語言,從那以後使用者逐漸增加。

1978年,Kernighan 和 Ritchie 合著了《The C Programming Language》,這本書定義的C語言被稱為 K,RC 。

1.2 標准 C

隨著C語言使用日益廣泛,出現了許多新問題,人們迫切希望對C語言進行標准化。

第一個標准:C89

1983年,ANSI成立了一個委員會X3J11,對C語言進行標准化。

1989年,ANSI 批准了第一個C語言標准 X3,159-1989,並於1990年公布,被稱為 ANSIC、C89 或 C90。

1990年,這個標准又被批准為ISO標准:ISO,IEC 9899:1990 。

ANSIC標准被ISO採納,並且ISO發布的修訂版也被ANSI採納,因此ANSI標准和ISO標准實際上沒有技術區別。這些名稱的含義是相同的:ANSI C、ISO C、標准C。

1994年和1996年,ISO發布了兩個技術更正,更正了1990ISOC標准中的錯誤。

第二個標准:C94

1995年,ISO發布了1990ISOC標準的一個補充,稱為AMD1。擴充後的標准被稱為C94或C95。

第三個標准:C99

1999年,ISO發布了一個新版本的ISOC標准:ISO,IEC9899:1999,稱為C99。

2001年、2004年和2007年,ISO發布了三個技術更正,更正了1999ISOC標准中的錯誤。

第四個標准:C11

2011年,ISO發布了一個新版本的ISOC標准:ISO,IEC9899:2011,稱為C11。C11 是 C語言的最新標准。

1.3 GNUC

1984年,Richard Stallman 發起了GNU計劃,它的目標是開發一個完整且自由的Unix-like操作系統(GNU系統)。

GNU系統是一個完整的操作系統,包括操作系統內核和各種工具軟體。各種GNU系統的變種(例如Redhat、Ubuntu等)已經被廣泛使用,它們使用的操作系統內核都是Linux。雖然這些系統經常被稱為Linux,但准確地說,它們是GNU/Linux系統。

GNU在編寫Linux時擴展了標准C,稱為GNUC。

GNU C的擴展詳見:Extensions to the C Language Family

GNU C也稱為Linux C,一般用於Linux上的開發,而標准C可以跨平台。

GNU C使用的編譯器是GCC。

⑧ linux 怎麼編譯c的源程序的gcc,編譯命令是什麼

在Linux下面,如果要編譯一個C語言源程序,我們要使用gcc編譯器。

先將源文件編譯成目標文件:gcc - c hello.c

生成hello.o文件,再將目標文件編譯成可執行文件:gcc -o hello hello.o

如:

int main(int argc,char **argv)

{

printf("Hello Linux ");

}

(8)linux只是一個編譯器擴展閱讀:

在使用GCC編譯器的時候,我們必須給出一系列必要的調用參數和文件名稱。GCC編譯器的調用參數大約有100多個,這里只介紹其中最基本、最常用的參數。具體可參考GCC Manual。

GCC最基本的用法是∶gcc [options] [filenames]

其中options就是編譯器所需要的參數,filenames給出相關的文件名稱。

網路_gcc

⑨ linux中常用編譯器是什麼

Linux 下可用的編譯器有 GCC、EGCS 和 PGCC,其中最常用的編譯器便是 GCC。

GCC 起初是 GNU 推出的 C語言編
譯器,用於類 Unix 系統下的編程,所以名為 GNU C Compiler 。隨著眾多自由開發者的加入,GCC
發展迅速,如今已成為一個支持眾多語言的編譯器了,其中包括 C、C++、Ada、Object C 和 Java 等,以至於 GCC 開始被擴展為
GNU Compiler Collection ,也就是「GNU 編譯器集合」的意思。

GCC用法:

1、GCC基本用法及其選項

gcc 或 g++ 的用法跟參數含義幾乎一樣,他們最基本的用法是:

2、只編譯子程序(-c)

3、產生目標文件(-o)

4、附加調試信息(-g)

5、多文件編譯

6、連接庫文件。

⑩ 在Linux 中有自帶C語言編譯器嗎

桌面 Linux 不像 FreeBSD,一般都不自帶 C 語言編譯器,因為那屬於開發用工具,桌面用戶一般不用。

但是許多 GNU/Linux 的發行版的後台軟體庫都存有 C 語言編譯器,可以通過軟體包管理器來安裝。

以 Fedora 22 為例,安裝 GCC 的命令為 sudo dnf install gcc (不過我個人比較偏好 clang),其中 dnf 是管理軟體包的指令。

熱點內容
不用internet打開ftp 發布:2025-05-15 23:06:00 瀏覽:152
sql字元串取數字 發布:2025-05-15 22:57:45 瀏覽:123
推薦編程課 發布:2025-05-15 22:34:12 瀏覽:618
表拒絕訪問 發布:2025-05-15 22:29:37 瀏覽:978
電腦怎樣解壓文件 發布:2025-05-15 22:25:32 瀏覽:439
dns伺服器怎麼看 發布:2025-05-15 22:17:27 瀏覽:151
3dm的壓縮包 發布:2025-05-15 22:09:23 瀏覽:662
和存儲字長 發布:2025-05-15 21:54:09 瀏覽:515
用什麼寫c語言 發布:2025-05-15 21:35:56 瀏覽:418
linux讀取u盤 發布:2025-05-15 21:32:13 瀏覽:508