linux下的c语言编译器
c语言可以在linux下执行。
Linux下使用最广泛的C/C++编译器是GCC,大多数的Linux发行版本都默认安装,不管是开发人员还是初学者,一般都将GCC作为Linux下首选的编译工具。
GCC(GNU Compiler Collection,GNU编译器集合),是一套由 GNU 开发的编程语言编译器。
‘贰’ 在Linux 中有自带C语言编译器吗
桌面 Linux 不像 FreeBSD,一般都不自带 C 语言编译器,因为那属于开发用工具,桌面用户一般不用。
但是许多 GNU/Linux 的发行版的后台软件库都存有 C 语言编译器,可以通过软件包管理器来安装。
以 Fedora 22 为例,安装 GCC 的命令为 sudo dnf install gcc (不过我个人比较偏好 clang),其中 dnf 是管理软件包的指令。
‘叁’ Linux下gcc/g++,make和cmake的区别
gcc是一个C语言编译器,g++是一个C++语言的编译器,这是它们的主要区别,虽然说gcc也可以编译C++代码文件,但实际上是需要g++支持的,gcc编译C++时是要调用g++的。
make是根据Makefile中定义的编译规则来对多个源文件执行编译命令,也就是说它是管理编译规则的工具,并不实际编译文件;而cmake则是可以生成Makefile文件的一个工具,实际上,cmake工具不仅可以生成Makefile,还可以生成Windows平台的VS等开发工具的dsp等工程文件,这样管理项目就更方便了。
‘肆’ Linux下做C语言开发,有哪些好用的工具,召唤最佳答案
Linux下的主要的C语言编译器
1. GCC
大名鼎鼎的GNU的C/C++/Obj-C编译器, 当前版本是2.8.1, 但据说与2.7.*有兼容性
问题. 而使用较广的是gcc 2.7.2系列, 如RedHat5中带的就是gcc 2.7.2.3
有时候在Cyrix上用gcc会有些问题, 因此有一套针对Cyrix特点的gcc 2.7.2.3
我这里有RedHat5的rpms ftp://166.111.68.98/pub/Warez-CD/Huricane-contrib
(Cyrix 2.7.2.3 & 2.8.1)
其基本结构就是一个front end和back end,
/usr/bin/gcc 就是个front end, 其kernel东西都放在 /usr/lib/gcc-lib下面,
cpp是C预处理器, cc1*的1M多的就是编译器的核心模块了
cc1 C compiler
cc1plus C++ compiler
cc1obj Object-C compiler
但gcc并没有集成Fortran的compiler, 一般要用f2c转成C后才用gcc编译
好象也还有个g77 Fortran compiler吧?
gcc的不断发展完善使许多commercial compiler都相形见绌, 那当然, gcc/emacs
都由GNU创始人Richard Stallman手创, 是GNU的旗舰产品, 质量当然没得说了:-)
由于 Unix平台的高度可移植性, gcc几乎在各种常见的Unix平台上都有, 即使是
Win32/DOS也有gcc的port. 比如说该死的Solaris普通版本连compiler都没有, 也
就只好用gcc了...
2. EGCS(Experimental/Enhanced GNU Compiler System)
这是gcc的发展方向, 把fortran等编译器集成进来, 也许还会有Pascal?
它的构造很清晰, 把对gcc的各种改进/port都集成回去. 如gcc 2.7系列据说是
没有对Pentium进行优化的, 而egcs则把pgcc对Pentium的一些优化集成进去了
现在gcc的开发工作主要就是egcs, 由Cygnus公司领导(?), 这Cygnus公司还是很
不错的, 还出了GNU-Win32, SourceNavigator等, 是GNU的坚实拥护者:-))
http://egcs.cygnus.com/
包括了C/C++/Obj-C/Fortran 编译器, 当前最新版本1.0.2, 还在不断开发中
昨天download发现KDE Beta4都用egcs编译了 :-)
Fortran集成进来后在/usr/lib/gcc-lib下又多了个f771的back end, 当然
还是g77/f77 编译
我这里有egcs 1.0.2 的rpm 在RH5-CD/collect下面
3. PGCC(Pentium GCC)
http://www.gcc.ml.org/
针对Pentium CPU进行了编译器优化的compiler
pgcc据说用JPEG压缩解压缩测试最快可比gcc快 30%!
新版的pgcc都是基于egcs的, 以一个patch的形式release
嗨!真是的……
‘伍’ 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语言编程,用什么软件
编译器使用g++
编辑器使用VI, Emacs
自动化工具使用automake 和Makefile
IDE使用Eclipse, Qt, KDevelop等。
‘柒’ Linux能直接编译C语言吗
Linux下编译C语言一般使用gcc。
可以打开一个终端,键入gcc --version。 如果可以看到gcc的版本号,则说明可以编译。否则需要手动安装。
要编译C语言程序,一般的命令为:
gcc <C_FILES> -o <TARGETFILE> <OPTIONS> -I<INCLUE_PATH>
C_FILES: 需要编译的源文件列表,如果有多个,用空格分隔。
TARGETFILE:要生成的目标文件。
OPTIONS:编译选项列表,具体可以通过man gcc查看。
INCLUE_PATH:自定义头文件路径,如果有多个,每个路径前面都要加-I。之间用空格分隔。
最简单的使用可以只输入源文件列表,其它为空。
比如要编译test.c, 那么可以:
gcc test.c
如果编译成功,gcc会生成可执行文件名,一般为a.out.
或者用
gcc test.c -o test
会生成可执行文件test。
‘捌’ 在Linux系统中,如何运行一个C语言程序
1、打开kali linux的终端。创建一个文件并命名为test.c。在终端输入:touch test.c。