首页 | Linux | 论坛 | 精华 | 博客 | 资料 | 手册 | 知识库 | 下载 | 人才 | 沙龙 | 搜索 | 登录 | 注册  
下载分类
操作系统
系统相关
网络互连
开发工具
应用程序
多媒体工具
游戏娱乐
资料视频
本类周下载TOP10
本类总下载TOP10
您的位置:自由软件库->开发工具->编译工具->gcc

首字母搜索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


软件名称: gcc
授权方式: GPL
操作系统: Linux,FreeBSD,UNIX,Windows,i386,x86_64
软件大小: 75K
最新更新: 2012-11-30 14:45:27
软件简介:

GCC(GNU Compiler Collection,GNU编译器套装),是一套由 GNU 开发的编程语言编译器。它是一套 以 GPL 及 LGPL 许可证所发行的自由软件,也是 GNU计划的关键部分,亦是自由的类Unix及苹果电脑 Mac OS X 操作系统的标准编译器。

GCC 4.4.7 is a bug-fix release containing fixes for regressions and serious
bugs in GCC 4.4.6.  This release marks the end of the maintainance of
the GCC 4.4 series.

  GCC 原名为 GNU C 语言编译器,因为它原本只能处理 C语言。GCC 很快地扩展,变得可处理 C++。之后也变得可处理 Fortran、Pascal、Objective-C、Java, 以及 Ada与其他语言。

GCC是由理查德·马修·斯托曼在1985年开始的。他首先扩增一个旧有的编译器,使它能编译C,这个编译器一开始是以Pastel语言所写的。Pastel是一个不可移植的Pascal语言特殊版,这个编译器也只能编译Pastel语言。为了让自由软件有一个编译器,后来此编译器由斯托曼和Len Tower在1987年以C语言重写并成为GNU专案的编译器。GCC的建立者由自由软件基金会直接管理。

 

在1997年,一群不满GCC缓慢且封闭的创作环境者,组织了一个名为EGCS〈Experimental/Enhanced GNU Compiler System〉的专案,此专案汇整了数项实验性的分支进入某个GCC专案的分支中。EGCS比起GCC的建构环境更有活力,且EGCS最终也在1999年四月成为GCC的官方版本。

 

GCC目前由世界各地不同的数个程序设计师小组维护。它是移植到中央处理器架构以及操作系统最多的编译器。

 

由于GCC已成为GNU系统的官方编译器(包括GNU/Linux家族),它也成为编译与建立其他操作系统的主要编译器,包括BSD家族、Mac OS X、NeXTSTEP与BeOS。

 

GCC通常是跨平台软件的编译器首选。有别于一般局限于特定系统与执行环境的编译器,GCC在所有平台上都使用同一个前端处理程序,产生一样的中介码,因此此中介码在各个其他平台上使用GCC编译,有很大的机会可得到正确无误的输出程序。

 

 

基本规则

  gcc所遵循的部分约定规则:

  .c为后缀的文件,C语言源代码文件;

  .a为后缀的文件,是由目标文件构成的档案库文件;

  .C,.cc或.cxx 为后缀的文件,是C++源代码文件;

  .h为后缀的文件,是程序所包含的头文件;

  .i 为后缀的文件,是已经预处理过的C源代码文件;

  .ii为后缀的文件,是已经预处理过的C++源代码文件;

  .m为后缀的文件,是Objective-C源代码文件;

  .o为后缀的文件,是编译后的目标文件;

  .s为后缀的文件,是汇编语言源代码文件;

  .S为后缀的文件,是经过预编译的汇编语言源代码文件。

 

基本用法

  在使用Gcc编译器的时候,我们必须给出一系列必要的调用参数和文件名称。GCC编译器的调用参数大约有100多个,其中多数参数我们可能根本就用不到,这里只介绍其中最基本、最常用的参数。

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

  其中options就是编译器所需要的参数,filenames给出相关的文件名称。

  -c,只编译,不连接成为可执行文件,编译器只是由输入的.c等源代码文件生成.o为后缀的目标文件,通常用于编译不包含主程序的子程序文件。

  -o output_filename,确定输出文件的名称为output_filename,同时这个名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可执行文件a.out。

  -g,产生符号调试工具(GNU的gdb)所必要的符号资讯,要想对源代码进行调试,我们就必须加入这个选项。

  -O,对程序进行优化编译、连接,采用这个选项,整个源代码会在编译、连接过程中进行优化处理,这样产生的可执行文件的执行效率可以提高,但是,编译、连接的速度就相应地要慢一些。

  -O2,比-O更好的优化编译、连接,当然整个编译、连接过程会更慢。

  -Idirname,将dirname所指出的目录加入到程序头文件目录列表中,是在预编译过程中使用的参数。C程序中的头文件包含两种情况∶

  A)#include <myinc.h>

  B)#include “myinc.h”

  其中,A类使用尖括号(< >),B类使用双引号(“ ”)。对于A类,预处理程序cpp在系统预设包含文件目录(如/usr/include)中搜寻相应的文件,而B类,预处理程序在目标文件的文件夹内搜索相应文件。


The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, Ada, and Go, as well as libraries for these languages (libstdc++, libgcj,...). GCC was originally written as the compiler for the GNU operating system. The GNU system was developed to be 100% free software, free in the sense that it respects the user s freedom.

相关论坛: 下载频道交流区 讨论区
立即下载

gcc-4.1.0.tar.bz2
gcc-4.0.3.tar.bz2
gcc-3.4.6.tar.bz2
gcc-3.3.6.tar.bz2
gcc-1762.tar.gz
gcc-2.8.1.tar.bz2
gcc-2.95.3-patches-1.2.tar.bz2
gcc-2.95.3.tar.bz2
gcc-2.95.3.tar.gz
gcc-3.1.1_final-patches-1.0.tbz2
gcc-3.1.1.tar.bz2
gcc-3.2.2-patches-1.0.tar.bz2
gcc-3.2.2.tar.bz2
gcc-3.2.3-manpages.tar.bz2
gcc-3.2.3.tar.bz2
gcc-3.2.3-tls-update.patch.bz2
gcc-3.2.tgz
gcc-3.3.1.tar.bz2
gcc-3.3.2-branch-update-20040119.patch.bz2
gcc-3.3.2-manpages.tar.bz2
gcc-3.3.2-patches-1.0.tar.bz2
gcc-3.3.2.tar.bz2
gcc-3.3.3.tar.bz2
gcc-3.3.4.tar.bz2
gcc-3.3.5-branch-update-20050130.patch.bz2
gcc-3.3.5-manpages.tar.bz2
gcc-3.3.5-patches-1.0.tar.bz2
gcc-3.3.5-patches-1.4.tar.bz2
gcc-3.3.5-piepatches-v8.7.7.1.tar.bz2
gcc-3.3.5.tar.bz2
gcc-3.3.5-uclibc-patches-1.0.tar.bz2
gcc-3.3.6-patches-1.3.tar.bz2
gcc-3.3.6-patches-1.4.tar.bz2
gcc-3.3.6-piepatches-v8.7.8.tar.bz2
gcc-3.3.6-ssp-1.0.tar.bz2
gcc-3.3.6.tar.bz2
gcc-3.3.6-uclibc-patches-1.0.tar.bz2
gcc-3.4.0-piepatches-v8.7.6.5.tar.bz2
gcc-3.4.1-branch-update-20040803.patch.bz2
gcc-3.4.1-manpages.tar.bz2
gcc-3.4.1-patches-1.1.tar.bz2
gcc-3.4.1.tar.bz2
gcc-3.4.2-20040916-1-src.diff.gz
gcc-3.4.2.tar.bz2
gcc-3.4.3.tar.bz2
gcc-3.4.4-20050522-1-src.diff.gz
gcc-3.4.4-crossfix.diff.bz2
gcc-3.4.4-patches-1.7.tar.bz2
gcc-3.4.4-piepatches-v8.7.8.tar.bz2
gcc-3.4.4-ssp-1.0.tar.bz2
gcc-3.4.4.tar.bz2
gcc-3.4.4-uclibc-patches-1.2.tar.bz2
gcc-3.4.5-patches-1.0.tar.bz2
gcc-3.4.5-patches-1.2.tar.bz2
gcc-3.4.5-patches-1.4.tar.bz2
gcc-3.4.5-piepatches-v8.7.9.tar.bz2
gcc-3.4.5-ssp-1.0.tar.bz2
gcc-3.4.5.tar.bz2
gcc-3.4.5-uclibc-patches-1.0.tar.bz2
gcc-3.4.5-uclibc-patches-1.1.tar.bz2
gcc-3.4.6-patches-1.0.tar.bz2
gcc-3.4.6-patches-1.1.tar.bz2
gcc-3.4.6-patches-1.2.tar.bz2
gcc-3.4.6.tar.bz2
gcc-3.4-amd64.tar.gz
gcc-3.4-i386-r1.tar.bz2
gcc-4.0.0-piepatches-v8.7.8.tar.bz2
gcc-4.0.0-uclibc-patches-1.0.tar.bz2
gcc-4.0.2-patches-1.6.tar.bz2
gcc-4.0.2.tar.bz2
gcc-4.0.3-patches-1.2.tar.bz2
gcc-4.0.3-patches-1.3.tar.bz2
gcc-4.0.3-piepatches-v8.7.8.tar.bz2
gcc-4.0.3.tar.bz2
gcc-4.0.3-uclibc-patches-1.0.tar.bz2
gcc-4.1.0-patches-1.2.tar.bz2
gcc-4.1.0-patches-1.3.tar.bz2
gcc-4.1.0.tar.bz2
gcc-4.1.0-uclibc-patches-1.1.tar.bz2
gcc-4.2-20060415.tar.bz2
gcc-4.2-20060422.tar.bz2
gcc-4.2-20060429.tar.bz2
gcc-4.2-20060506.tar.bz2
gcc-4.1.1-20060517.tar.bz2
gcc-4.1.1.tar.bz2
gcc-core-4.1.1.tar.bz2
gcc-3.4.6-piepatches-v8.7.9.tar.bz2
gcc-4.2-20060715.tar.bz2
gcc-4.3.4.tar.bz2
gcc-4.3.4-patches-1.0.tar.bz2
gcc-4.3.4-piepatches-v10.1.5.tar.bz2
gcc-4.3.4-specs-0.9.4.tar.bz2
gcc-4.3.4-uclibc-patches-1.0.tar.bz2
gcc-4.3.2-specs-0.9.3.tar.bz2
gcc-4.3.2-piepatches-v10.1.5.tar.bz2
gcc-4.4.1.tar.bz2
gcc-4.4.1-patches-1.0.tar.bz2
gcc-4.2.1.tar.bz2
gcc-4.2.0-patches-1.4.tar.bz2
gcc-4.3.2-patches-1.8.tar.bz2
gcc-4.4.2.tar.bz2
gcc-4.4.2-patches-1.0.tar.bz2
gcc-4.4.2-uclibc-patches-1.0.tar.bz2
gcc-3.3.6-patches-1.7.tar.bz2
gcc-4.3.4-patches-1.3.tar.bz2
gcc-4.3.6-patches-1.0.tar.bz2
gcc-4.3.6-piepatches-v10.1.5.tar.bz2
gcc-4.3.6-specs-0.9.4.tar.bz2
gcc-4.3.6.tar.bz2
gcc-4.3.6-uclibc-patches-1.0.tar.bz2
gcc-4.4.4-patches-1.4.tar.bz2
gcc-4.4.5-patches-1.2.tar.bz2
gcc-4.4.5-patches-1.3.tar.bz2
gcc-4.4.6-patches-1.0.tar.bz2
gcc-4.4.6-piepatches-v0.4.5.tar.bz2
gcc-4.4.6.tar.bz2
gcc-4.4.6-uclibc-patches-1.0.tar.bz2
gcc-4.5.2-patches-1.1.tar.bz2
gcc-4.5.3-patches-1.0.tar.bz2
gcc-4.5.3-piepatches-v0.4.5.tar.bz2
gcc-4.5.3.tar.bz2
gcc-4.5.3-uclibc-patches-1.0.tar.bz2
gcc-4.6.0-patches-1.2.tar.bz2
gcc-4.6.0-piepatches-v0.4.5.tar.bz2
gcc-4.6.0.tar.bz2
gcc-4.6.0-uclibc-patches-1.0.tar.bz2
gcc-4.6.1-patches-1.0.tar.bz2
gcc-4.6.1-piepatches-v0.4.5.tar.bz2
gcc-4.6.1.tar.bz2
gcc-4.6.1-uclibc-patches-1.0.tar.bz2
gcc-5666.3.tar.gz
gcc-4.5.3.tar.bz2
gcc-4.5.3-patches-1.0.tar.bz2
gcc-4.5.3-piepatches-v0.4.5.tar.bz2
gcc-4.5.3-uclibc-patches-1.0.tar.bz2
gcc-4.5.2.tar.bz2
gcc-4.6.2.tar.bz2
gcc-4.4.5.tar.bz2
gcc-4.5.1.tar.bz2
gcc-5664.tar.gz
gcc-4.4.3-specs-0.2.0.tar.bz2
gcc-4.4.4.tar.bz2
gcc-4.3.5-specs-0.9.4.tar.bz2
gcc-4.3.5.tar.bz2
gcc-5659.tar.gz
gcc-fortran-4.2.4.tar.bz2
gcc-4.4.3.tar.bz2
gcc-5646.1.tar.gz
gcc-fortran-4.2.1.tar.bz2
gcc-5646.tar.gz
gcc-5493.tar.gz
gcc-4.4.0.tar.bz2
gcc-4.3.3-specs-0.9.4.tar.bz2
gcc-4.3.3.tar.bz2
gcc-4.3.2-specs-0.9.4.tar.bz2
gcc-4.3.2-specs-0.9.2.tar.bz2
gcc-4.3.4-patches-1.4.tar.bz2
gcc-4.5.3-piepatches-v0.4.6.tar.bz2
gcc-4.6.2-patches-1.3.tar.bz2
gcc-4.6.2-piepatches-v0.5.0.tar.bz2
gcc-4.6.2-patches-1.2.tar.bz2
gcc-4.6.2-uclibc-patches-1.0.tar.bz2
gcc-4.5.3-piepatches-v0.4.7.tar.bz2
gcc-4.5.3-patches-1.1.tar.bz2
gcc-4.6.2-patches-1.4.tar.bz2
gcc-4.4.7-patches-1.0.tar.bz2
gcc-4.4.7-piepatches-v0.4.5.tar.bz2
gcc-4.4.7-specs-0.2.0.tar.bz2
gcc-4.4.7-uclibc-patches-1.0.tar.bz2
/gcc-4.4.7.tar.bz2
gcc-4.5.3-patches-1.2.tar.bz2
gcc-4.6.3.tar.bz2
gcc-4.5.3-patches-1.3.tar.bz2
gcc-4.5.3-patches-1.4.tar.bz2
gcc-4.5.3-patches-1.5.tar.bz2
gcc-4.6.3-patches-1.1.tar.bz2
gcc-4.6.3-patches-1.2.tar.bz2
gcc-4.6.3-patches-1.3.tar.bz2
gcc-4.7.0-patches-1.0.tar.bz2
gcc-4.7.0-patches-1.1.tar.bz2
gcc-4.7.0-piepatches-v0.5.3.tar.bz2
gcc-4.7.0-uclibc-patches-1.0.tar.bz2
gcc-4.7.0.tar.bz2
gcc-4.7.1-patches-1.0.tar.bz2
gcc-4.7.1-piepatches-v0.5.3.tar.bz2
gcc-4.7.1-uclibc-patches-1.0.tar.bz2
gcc-4.7.1.tar.bz2
gcc-config-1.7.3.tar.xz
gcc-4.6.3-piepatches-v0.5.2.tar.bz2
gcc-4.5.4-patches-1.0.tar.bz2
gcc-4.5.4-piepatches-v0.4.7.tar.bz2
gcc-4.5.4-uclibc-patches-1.0.tar.bz2
gcc-4.5.4.tar.bz2
gcc-3.3.6-patches-1.8.tar.bz2
gcc-4.6.3-patches-1.4.tar.bz2
gcc-4.6.3-patches-1.5.tar.bz2
gcc-4.7.1-patches-1.1.tar.bz2
gcc-4.7.1-patches-1.2.tar.bz2
gcc-4.6.3-patches-1.6.tar.bz2
gcc-4.7.1-patches-1.3.tar.bz2
gcc-4.5.0-patches-1.5.tar.bz2
gcc-4.5.1-patches-1.5.tar.bz2
gcc-4.5.2-patches-1.2.tar.bz2
gcc-4.5.3-patches-1.6.tar.bz2
gcc-4.6.0-patches-1.3.tar.bz2
gcc-4.6.1-patches-1.1.tar.bz2
gcc-4.6.2-patches-1.5.tar.bz2
gcc-4.6.3-patches-1.7.tar.bz2
gcc-4.7.0-patches-1.2.tar.bz2
gcc-4.7.1-patches-1.4.tar.bz2
gcc-4.7.2-patches-1.0.tar.bz2
gcc-4.7.2-piepatches-v0.5.3.tar.bz2
gcc-4.7.2-uclibc-patches-1.0.tar.bz2
gcc-4.7.2.tar.bz2
gcc-4.7.2-patches-1.1.tar.bz2
gcc-4.7.2-piepatches-v0.5.4.tar.bz2
gcc-4.7.2-piepatches-v0.5.5.tar.bz2
gcc-4.7.1-patches-1.5.tar.bz2
gcc-4.7.2-patches-1.2.tar.bz2
gcc-4.7.2-patches-1.3.tar.bz2
gcc-4.1.2-patches-1.4.tar.bz2
gcc-4.2.4-patches-1.2.tar.bz2
gcc-4.3.6-patches-1.1.tar.bz2
gcc-4.4.7-patches-1.1.tar.bz2
gcc-4.6.3-patches-1.8.tar.bz2

 Linux最新资讯更多>> 
·Evernote推进入华节奏:
·桌面操作系统 4 月最新
·Linux基金会:Linux成B
·中国联通升级HSPA+网络
·联通“随意打”论战:绝
·阿里巴巴集团30亿美元贷
·要以扫黄打非的精神进行
·内核源码,ARM架构上的
·Ubuntu 10.04版本企业云
·企业级Linux三国鼎立 与
·开源图像软件GIMP开发者
·不给Source就捣蛋?谈G
 IT最新资讯更多>> 
·大连外企500强急招java
·(内部推荐)EMC-Princ
·(内部推荐)EMC-greenpl
·页游公司招聘:运维开发
·赶集移动部门招聘前端开
·【北京】知名软件公司招
·有莫有C++ and C# and
·下班路上捡到一张工资表
·猎头代招:北京大型上市
·DSI猎头代招:华为-IP部
·上海诚聘JAVA工程师
·微软和苹果10大失败产品
·Darl McBride离开领导岗
·提升Qt的应用诺基亚即将
 综合:更多>> 
·PHP中strtotime函数使用
·五个常见 PHP数据库问题
·初探PHP单元测试利器:
·PHP开发人员容易忽略的
·逃离伪PHP程序员应该做
·大型Web应用运行时 PHP
·PHP企业级应用缓存技术
·PHP应用提速面面观
·用书签查询网站pr值
·PHP句法规则详解
·阴历-农历-转换类
·PHP定时执行任务的实现
·几种有用的变型 PHP中循
·PHP如何修改Linux或Uni
·PHP中全面阻止SQL注入式
·分享几个非常有用的PHP
·PHP面向对象法则
·优化PHP程序的方法
·orcale queue
·谁可以推荐几本经典的操
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 友情链接 | 免费注册

Copyright © 2001-2006 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们

京ICP证041476号