当前位置:首页 » 编程软件 » gnu编译器

gnu编译器

发布时间: 2022-01-20 15:24:41

① 我的linux上面为什么没有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}目录。

如果用的是ubuntu或者是fedora的话 可以在源里直接安装

② gcc编译器

找了半天就这个,
ftp://ftp2.sco.com/pub/skunkware/osr5/devtools/gcc/
不过好像不是最新版的

官网的就可以啊
http://gcc.gnu.org/mirrors.html

下面那些链接,第一个就行,有打不开的试试别的

# Austria: gd.tuwien.ac.at, thanks to Antonin dot Sprinzl at tuwien dot ac dot at
# Bulgaria: gcc.igor.onlinedirect.bg, thanks to igor at onlinedirect dot bg
# Canada, Toronto: http://gcc-ca.internet.bs, thanks to Internet.bs (info at internet dot bs)
# China: ftp://linuxforum.net/ftp.gcc.gnu.org/, thanks to David Deng (david99deng at yahoo dot com)
——————
提示是gcc命令不存在啊

装了gcc了?

③ windows怎么安装gnu c编译器

Windows安装GNU编译器使用makefile
一、下载安装MinGW

下载后,运行程序:mingw-get-inst-20120426.exe,选择download latest repository catalogues. 选择编译器是勾选C Compiler 与C++ Compiler,点击next进行下载及安装。

二、设置环境变量
右击计算机->属性->高级系统设置->环境变量,在系统变量中找到PATH,将MinGW安装目录里的bin文件夹的地址添加到PATH里面,(注意:PATH里两个目录之间以英文的;隔开)。打开MinGW的安装目录,打开bin文件夹,将mingw32-make.exe重命名为make.exe。

三、测试GCC编译
创建一下test.c,用记事本打开该文件,将以下内容复制到文件中。

[cpp] view plain
#include<stdio.h>
#include<stdlib.h>
int main(void){
printf("Hello, world!\n");
system("pause");
return 0;
}

打开命令提示符,更改目录到test.c的位置,键入
gcc -o test.exe test.c
可生成test.exe可执行文件。
四、测试makefile
新建文件夹,在文件夹内创建max_num.c、max.h、max.c、makefile四个文件。
max_num.c内容如下:

[cpp] view plain
#include <stdio.h>
#include <stdlib.h>
#include "max.h"

int main(void)
{
printf("The bigger one of 3 and 5 is %d\n", max(3, 5));
system("pause");
return 0;
}

max.h内容如下:

[cpp] view plain
int max(int a, int b);

max.c内容如下:

[cpp] view plain
#include "max.h"

int max(int a, int b)
{
return a > b ? a : b;
}

makefile内容如下:

[html] view plain
max_num.exe: max_num.o max.o
gcc -o max_num.exe max_num.o max.o

max_num.o: max_num.c max.h
gcc -c max_num.c

max.o: max.c max.h
gcc -c max.c

注意所有含有gcc的行前面是一个制表符,而非若干空格。否则可能会保存,无法编译。

打开命令提示符,更改目录到新建的文件夹,键入make,可生成指定的应运程序。
测试完成。

④ GNU是个啥 是个标准,软件还是编译器还是一个总称

GNU是一个自由软件工程项目。下面的文字没有具体解释GNU是哪几个单词的所写,但从整体上说明了GNU工程是怎么回事,希望对你有帮助。
GNU工程已经开发了一个被称为“GNU”(GNU是“不是UNIX”的缩写)的、对Unix向上兼容的完整的自由软件系统(free software system)。由Richard Stallman完成的最初的GNU工程的文档被称为‘GNU宣言’,该宣言已经被翻译成多种其它语言。我们还有创作与1983年的GNU工程创始宣言。
上述单词“free”指的是自由(freedom),而不是价格。你可能需要或者不需要为获取GNU软件而支付费用。不论是否免费,一旦你得到了软件,你在使用中就拥有三种特定的自由。首先是复制程序并且把它送给你的朋友或者同事的自由;而后是通过获取完整的源代码,按照你的意愿修改程序的自由;最后是发布软件的改进版并且有助于创建自由软件社团的自由。(如果你重新发布 GNU软件,你可能对分发拷贝这项体力劳动收费,也可能不收费。)

在1983年构思GNU工程是为了提供一种找回在计算机界早期的盛行的合作精神的方式--为了使合作成为可能而排除有私有软件所有者给合作造成的障碍。

在1971年,当Richard Stallman开始他在MIT的职业生涯时,他工作于一个专门使用自由软件的工作组。即使计算机公司也经常发布自由软件。程序员可以自由地相互合作,就象他们通常所作的那样。

到了80年代,几乎所有的软件都是私有的,这意味着它有一个不允许并且预防用户合作的拥有者。这就使得GNU工程成为必要的了。

每个计算机的使用者都需要一个操作系统;如果没有自由的操作系统,那么如果你不求助于私有软件,你甚至不能开始使用一台计算机。所以自由软件议事日程的第一项就是自由的操作系统。

一个操作系统不仅仅是一个内核;它还包括编译器、编辑器、文本排版程序,电子邮件软件,和许多其他东西。因此,创作一个完整的操作系统是一乡十分庞大的工作。它将耗费太多的年头。

由于Unix的全局设计已经得到认证并且广泛流传,我们决定使操作系统与Unix兼容。同时这种兼容性使Unix的使用者可以容易地转移到GNU上来。

自由的,类似于Unix的内核的初始目标已经达到了。到90年代,我们已经发现或者完成了除了内核之外的所有主要成分。而Linux,一个自由的内核,由Linux Torvalds开发了。把Linux和几乎完成的GNU 系统结合起来,就构成了一个完整的操作系统:一个基于Linux的GNU系统。估计目前大约有十万人在使用基于Linux的GNU系统,包括Slackware、Debian、Red Hat以及其它。

⑤ 什么是GCC编译器

Linux系统下的Gcc(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。gcc是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高20%~30%。 Gcc编译器能将C、C++语言源程序、汇程式化序和目标程序编译、连接成可执行文件,如果没有给出可执行文件的名字,gcc将生成一个名为a.out的文件。在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。而gcc则通过后缀来区别输入文件的类别,下面我们来介绍gcc所遵循的部分约定规则。 .c为后缀的文件,C语言源代码文件; .a为后缀的文件,是由目标文件构成的档案库文件; .C,.cc或.cxx 为后缀的文件,是C++源代码文件; .h为后缀的文件,是程序所包含的头文件; .i 为后缀的文件,是已经预处理过的C源代码文件; .ii为后缀的文件,是已经预处理过的C++源代码文件; .m为后缀的文件,是Objective-C源代码文件; .o为后缀的文件,是编译后的目标文件; .s为后缀的文件,是汇编语言源代码文件; .S为后缀的文件,是经过预编译的汇编语言源代码文件。 Gcc的执行过程 虽然我们称Gcc是C语言的编译器,但使用gcc由C语言源代码文件生成可执行文件的过程不仅仅是编译的过程,而是要经历四个相互关联的步骤∶预处理(也称预编译,Preprocessing)、编译(Compilation)、汇编(Assembly)和连接(Linking)。 命令gcc首先调用cpp进行预处理,在预处理过程中,对源代码文件中的文件包含(include)、预编译语句(如宏定义define等)进行分析。接着调用cc1进行编译,这个阶段根据输入文件生成以.o为后缀的目标文件。汇编过程是针对汇编语言的步骤,调用as进行工作,一般来讲,.S为后缀的汇编语言源代码文件和汇编、.s为后缀的汇编语言文件经过预编译和汇编之后都生成以.o为后缀的目标文件。当所有的目标文件都生成之后,gcc就调用ld来完成最后的关键性工作,这个阶段就是连接。在连接阶段,所有的目标文件被安排在可执行程序中的恰当的位置,同时,该程序所调用到的库函数也从各自所在的档案库中连到合适的地方。 Gcc的基本用法和选项 在使用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 B)#include “myinc.h” 其中,A类使用尖括号(< >),B类使用双引号(“ ”)。对于A类,预处理程序cpp在系统预设包含文件目录(如/usr/include)中搜寻相应的文件,而对于B类,cpp在当前目录中搜寻头文件,这个选项的作用是告诉cpp,如果在当前目录中没有找到需要的文件,就到指定的dirname目录中去寻找。在程序设计中,如果我们需要的这种包含文件分别分布在不同的目录中

⑥ gnu编译器是什么意思

GCC(GNU Compiler Collection,GNU编译器集合),是一套由 GNU 开发的编程语言编译器。以及大部分UNIX系统的程序库和工具。
GNU是“GNU's Not Unix”的递归缩写。

⑦ 如何使用GNU编译器GCC来编译Cortex-M3

MinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称。

实际上 MinGW 并不是一个 单纯的C/C++ 编译器,而是一套 GNU 工具集合。除开 GCC 以外,MinGW 还包含有一些其他的 GNU 程序开发工具 (比如 gawk bison 等等)。
开发 MinGW 是为了那些不喜欢工作在 Linux(FreeBSD) 操作系统而留在 Windows 的人提供一套符合 GNU 的 GNU 工作环境。
所以,使用 MinGW 我们就可以像在 Linux 下一样使用 GNU 程序开发工具。
GCC 就是 MinGW 的核心所在,GCC 是一套支持众多计算机程序语言的编译系统,而且在语言标准的实现上是最接近于标准的。并且 GCC
几乎可以移植到目前所有可用的计算机平台。(我的电脑上就还装有 DevKitPro,里面包含 GCC 的 ARM(for GBA/DS/GP32)
和 MIPS(for PSP) 版本。)
GCC 本身不像 VC 那样拥有IDE 界面(在 Windows 上也存在 Dev C++ 之类的支持 MinGW 编译器的
IDE)。源代码编辑你可以选用任何你喜欢的文本编辑器(据说微软的开发人员包括 VC 的开发都不用 VC 所带的 IDE 编辑器,而是选用 GNU
的 VIM 编辑器)。然后使用 make 等工具来进行软件项目的编译、链接、打包乃至发布。而像 cvs(svn)
源代码版本控制工具可以让世界上任何一个角落的人都可以参与到软件项目中来。

2.下载MinGW
一种方法是到Sourceforge(http://sourceforge.net/project/showfiles.php?group_id=2435)下载一个MinGW-2.0.0-3.exe。

但是我配置的时候我电脑上安装了codeblocks,已经自带了MinGW。

3.环境变量的配置
在(系统属性-->高级-->环境变量-->系统变量 中)(以下目录都根据自己的电脑MinGW所在位置不同而改变)

a.在PATH的值中加入“C:\Program Files\MinGWStudio\MinGW\bin”。这是寻找gcc编译器的路径。如果PATH中还有其他内容,需要用英文状态下分号进行分割

b.新建LIBRARY_PATH变量,在其值中加入“C:\Program Files\MinGWStudio\MinGW\lib”。这是标准库存放的路径。

c.新建C_INCLUDE_PATH变量,在其值中加入“C:\Program Files\MinGWStudio\MinGW\include”。这是Include查找头文件的路径。

4.验证gcc是否正常运行
在cmd控制台窗口下面,输入gcc -v。若已经成功安装好,会显示gcc的版本信息。

⑧ 《c++ primer第四版》中说的GNU编译器在哪里可以下载到

GNU是一个GNU not unix 的简称 编译器主要是gcc 你搜索一下就行偶尔 这个是在linux平台上的编译器 你要装在linux操作系统下

⑨ 如何下载gnu c 编译器

你直接下一个codeblocks吧,Code::Blocks在它的构建中正式提供GNU/Linux版本,支持gun下的C/C++,而且还是免费的,开源软件,我就一直在用,真心推荐。希望我的回答对你有帮助。

热点内容
加密mp3文件 发布:2024-11-16 04:43:04 浏览:842
观澜ug编程培训 发布:2024-11-16 04:42:15 浏览:639
注册表中心服务器地址生成规则 发布:2024-11-16 04:30:19 浏览:962
安卓360双系统怎么设置 发布:2024-11-16 04:29:32 浏览:756
战网如何找回密码 发布:2024-11-16 04:21:56 浏览:862
安卓手机如何自定义储存库 发布:2024-11-16 04:19:06 浏览:901
无线网密码哪里看到 发布:2024-11-16 04:17:02 浏览:922
玩乐高侏罗纪游戏需要哪些配置 发布:2024-11-16 04:05:50 浏览:537
数字编程话 发布:2024-11-16 04:05:43 浏览:750
电脑配置测试软件哪个好用 发布:2024-11-16 03:45:01 浏览:353