Posted on 2008-09-03 14:44
Prayer 閱讀(443)
評論(0) 編輯 收藏 引用 所屬分類:
LINUX/UNIX/AIX
從名字上看,老的unix系統
的CC程序叫做C Compiler。但GCC這個名字按GNU的說法叫做Gnu Compiler
Collection。因為gcc包含很多編譯器(C, C++, Objective-C, Ada, Fortran,and
Java)。所以它們是不一樣的,一個是一個古老的C編譯器,一個是編譯器的Gnu的編譯器的集合(Gcc里的C編譯器比CC強大太多了,所以你沒必要用
CC)。當你調用gcc時不一定是調用的C/C++編譯器,是gcc根據文件擴展名自動識別并調用對應的編譯器,具體可查閱$man gcc。
你是下載不到CC的,原因是:CC來自于昂貴的Unix系統,CC是商業軟件,要想用你需要打電話,寫訂單,而不是打開你的Browser去download。
linux下的cc是gcc的符號鏈接。可以通過$ls –l
/usr/bin/cc來簡單察看.而編譯時看到的控制臺輸出CC則是一個指向gcc的變量,該變量是make程序的內建變量,就算你在Makefile
中沒有CC=
,該變量也會存在,并默認指向gcc。cc的符號鏈接和變量存在的意義在于源碼的移植性,可以方便的用GCC來編譯老的用cc編譯的unix軟件,甚至連
Makefile都不要改。而且也便于linux程序在unix下編譯。
近幾年的一個新情況是越來越多的unix用戶,據我所知像solaris,bsd用
戶也不太使用CC了,人們都一定要裝一個gcc,用它來編譯C/C++程序。原因顯而易見,gcc足夠強大,健壯。支持估計目前為止只有它支持的ISO
c/c++ 新特性。當然你最好不要使用night版本的gcc。