linux下安装gcc-4.6.3
gcc的使用方法
![gcc的使用方法](https://img.taocdn.com/s3/m/c79cb027dcccda38376baf1ffc4ffe473268fd56.png)
gcc的使用方法GCC(GNU Compiler Collection)是一款由GNU开发的编程语言编译器集合,支持多种编程语言,如C、C++、Fortran等。
它被广泛用于各种操作系统和硬件平台上的软件开发,提供了强大的功能和灵活的配置选项。
本文将介绍GCC的基本使用方法,帮助读者快速上手。
一、安装GCC要使用GCC,首先需要在您的计算机上安装它。
GCC可以在多个操作系统上运行,包括Linux、Windows和Mac OS。
具体的安装方法因操作系统而异,下面将分别介绍。
1. 在Linux上安装GCC:在大多数Linux发行版中,GCC已经默认安装。
如果您的系统中没有安装GCC,您可以通过包管理器来安装它。
例如,在Debian或Ubuntu系统上,可以使用以下命令安装GCC:```sudo apt-get install gcc```其他Linux发行版的安装方法请参考相应的文档。
2. 在Windows上安装GCC:在Windows上,可以通过MinGW或MSYS2来安装GCC。
这两个工具集提供了一种在Windows环境中使用GCC的方式。
您可以从官方网站上下载并按照安装向导进行安装。
3. 在Mac OS上安装GCC:在Mac OS上,可以使用Homebrew或MacPorts来安装GCC。
这两个软件包管理系统可以让您以与Linux相似的方式在Mac OS上安装软件。
例如,使用Homebrew安装GCC的命令如下:```brew install gcc```其他安装方法请参考相应文档。
二、编写源代码安装好GCC后,我们就可以开始编写源代码了。
GCC支持多种编程语言,但本文以C语言为例进行介绍。
打开任何文本编辑器,创建一个后缀名为.c的文件,并编写您的C 源代码。
例如,创建一个名为`hello.c`的文件,其中包含以下代码:```c#include <stdio.h>int main() {printf("Hello, world!\n");return 0;}```三、编译和运行代码一旦您编写好了源代码,接下来就可以使用GCC将其编译成可执行文件。
linux的gcc使用方法
![linux的gcc使用方法](https://img.taocdn.com/s3/m/547dba33854769eae009581b6bd97f192279bfbf.png)
linux的gcc使用方法Linux是一种开源的操作系统,广泛应用于服务器和嵌入式系统中。
而GCC(GNU Compiler Collection)是Linux下最常用的编译器套件之一,用于将源代码编译成可执行文件。
本文将介绍GCC的使用方法,帮助读者快速上手。
一、安装GCC在Linux系统中,默认情况下已经安装了GCC。
可以通过运行以下命令来验证是否已经安装了GCC:```gcc --version```如果GCC已经安装,则会显示GCC的版本信息;如果没有安装,则可以通过运行以下命令来安装GCC:```sudo apt-get install gcc```二、编写源代码在使用GCC之前,我们需要先编写源代码。
可以使用任何文本编辑器创建一个以.c为后缀的源文件,例如hello.c。
下面是一个示例的源代码:```c#include <stdio.h>int main() {printf("Hello, world!\n");return 0;}```三、编译源代码编写完源代码后,我们可以使用GCC来将其编译成可执行文件。
在终端中运行以下命令:```gcc -o hello hello.c```其中,-o参数用于指定编译后生成的可执行文件的名称,hello为示例的可执行文件名,hello.c为源代码文件名。
如果编译成功,GCC将会生成一个名为hello的可执行文件。
四、运行可执行文件在编译成功后,我们可以通过以下命令来运行可执行文件:```./hello```如果一切顺利,终端将会输出"Hello, world!"的字符串。
五、GCC的其他常用选项除了上述基本的使用方法外,GCC还提供了许多其他的选项,用于控制编译过程的行为。
以下是一些常用的选项:- -Wall:开启所有警告信息的显示。
- -g:生成供调试器使用的调试信息。
- -O2:进行优化处理,提高程序执行效率。
linux下QT的安装
![linux下QT的安装](https://img.taocdn.com/s3/m/e80bcfa91a37f111f1855b7d.png)
o
You have not explicitly asked to use pkg-config and are cross-compiling.
pkg-config will not be used to automatically query cflag/lib parameters for
dependencies
This is the Qt for Embedded Linux Open Source Edition.
You are licensed to use this software under the terms of
the Lesser GNU General Public License (LGPL) versions 2.1.
进入该目录
[root@PCY-COMPUTER qt-x11-opensource-src-4.5.2]# cd /usr/local/qt/qt-x11-opensource-src-4.5.2/tools/qvfb/
编译qvfb并安装
[root@PCY-COMPUTER qvfb]# make;make install
将fontconfig-2.8.0.tar.gz拷贝到虚拟机解压,然后执行
#./configure --sysconfdir=/etc --prefix=/usr --mandir=/usr/share/man
#make
#make ins毕!
3.配置安装X86的QTE
[root@PCY-COMPUTER src]# ls
qt-embedded-linux-opensource-src-4.5.2.tar.gz qt-x11-opensource-src-4.5.2.tar.gz
linux?ubuntu?X86和ARM平台QT安装步骤
![linux?ubuntu?X86和ARM平台QT安装步骤](https://img.taocdn.com/s3/m/71315199b8d528ea81c758f5f61fb7360b4c2bc9.png)
linux ubuntu X86和ARM平台QT安装步骤Linux ubuntu 平台:3种方式1、直接安装:sudo apt-get install libqt4-dev qtcreator(最好)2、源代码安装,一般不用3、sdk安装:下载sdk:sudo apt-get install libglib2.0-dev libSM-dev libxrender-dev libfontconfig1-dev libxext-devARM平台:1、安装交叉工具链,能够使用arm-linux-gnu-gcc命令编译如4.1.1版本的:mkdir /opt/crosstooltar -jxvf 路径/4.1.1_softfloat_withlib.tar.bz2 -C /opt/crosstool //将编译工具解压到crosstool中。
配置环境变量,当用arm-linux-gnu-gcc 编译程序时能够找得到此文件所在的目录例:vim /home/farsight/.bashrc在末尾添加:export PATH=$PATH:/opt/crosstool/4.1.1/bin2、看 4.1.1/arm-linux-gnu/lib下是否有zlib,libjpeg,libpng,freetype库文件如果没有,安装:以zlib为例:从下载源码tar -jxvf xxx/zlib-1.2.5.tar.bz2cd zlib-1.2.5CC=arm-linux-gnu-gcc AR=arm-linux-gnu-ar RANLIB=arm-linux-gnu-ranlib LD=arm-linux-gnu-ld ./configure --prefix=/opt/crosstool/4.1.1/arm-linux-gnumakemake install其他的网址是:安装步骤和上面一样3、Qt默认的ARM交叉编译器是:arm-linux-开头的,但是系统开始安装的是arm-linux-gnu开头的,所以要改qt源码:例:vim qt-everywhere-opensource-src-4.6.3/mkspecs/qws/linux-arm-g++/qmake.conf在arm-linux-后加个gnu,例:arm-linux-gnu-gcc...4、qt配置细微配置:编译qconfig,用qconfig执行相应的文件cd qt-everywhere-opensource-src-4.6.3/tools/qconfigqmakemakesudo cp qconfig /usr/bincd qt-everywhere-opensource-src-4.6.3/src/corelib/global qconfig qfeatures.txt...粗配置:使用./configure --help5、安装文件。
arm-linux-gcc-4.5.1安装方法
![arm-linux-gcc-4.5.1安装方法](https://img.taocdn.com/s3/m/89712ec87e192279168884868762caaedd33ba2d.png)
arm-linux-gcc-4.5.1安装⽅法
说明:我使⽤的是在虚拟机下的红帽linux5 ,通过终端⼯具SecureCRT操作,使⽤虚拟机等其他⼯具的过程⼤致相同
arm-linux-gcc-4.5.1安装⽅法:
1、使⽤rz命令(CRT特有,虚拟机可使⽤samba⼯具)将arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz放⼊linux的⼀个⽬录下,我的是根⽬录下的myfile⽬录,路径: /myfile
2、将arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz解压
命令:#tar zxvf arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz
3、解压后⽣成opt⽬录,进⼊此⽬录。
路径如下:/myfile/opt/FriendARM/toolschain/4.5.1
命令: cd /myfile/opt/FriendARM/toolschain/4.5.1
4、将4.5.1这个⽬录拷贝到/usr/local/arm(位置⾃⼰定义,但需要记住此路径,后⾯设置时要使⽤此路径)
命令:cp -R 4.5.1 /usr/local/arm
5、在/etc/profile中最后⼀⾏增加export PATH=/usr/local/arm/4.5.1/bin:$PATH(这就是前⾯要记住指定路径的原因),并保存。
命令:vi /etc/profile
6、最后
命令:source /etc/profile
7、此时arm-linux-gcc-4.5.1已经安装完成,可以使⽤arm-linux-gcc –v来验证。
Fedora9 下搭建Qt Creator的ARM开发环境并移植Qt4.6.3-books到mini2440
![Fedora9 下搭建Qt Creator的ARM开发环境并移植Qt4.6.3-books到mini2440](https://img.taocdn.com/s3/m/4cb028fbf705cc1755270960.png)
到/downloads-cn下载最新版的软件包,当前是:
1、用于 Linux/X11 32位 的 Qt Creator 2.0.0 二进制软件包Qt SDK for Linux/X11 32-bit** (371 MB)( /qtsdk/qt-sdk-linux-x86-opensource-2010.04.bin)
-no-opengl \
-no-cups \
-no-glib \
-no-xcursor -no-xfixes -no-xrandr -no-xrender \
-no-separate-debug-info \
-nomake examples -nomake tools -nomake docs \
# make
# make install
我下载的包解压后没有configure文件,需要运行autogen.sh后才能生成。
9、进入qt-everywhere-opensource-src-4.6.3-arm目录编译安装
首先先配置:
注:必须加上“-prefix /usr/local/Trolltech/QtEmbedded-4.6.3-arm ”参数, 不然安装后不在QtEmbedded-4.6.3-arm文件夹下,而是覆盖了QtEmbedded-4.6.3。
1234 dev lib opt sbin usr
Settings etc linuxrc proc sys var
bin home mnt root tmp www
5. 编译 PC 版:
进入pc目录
#./configure
# gmake
# gmake install
用高版本gcc-4.1.2安装低版本gcc-3.2.2
![用高版本gcc-4.1.2安装低版本gcc-3.2.2](https://img.taocdn.com/s3/m/4f6a02ded4bbfd0a79563c1ec5da50e2524dd19b.png)
用高版本gcc-4.1.2安装低版本gcc-3.2.2用高版本gcc-4.1.2安装低版本gcc-3.2.2我使用虚拟机安装了Redhat Enterprise Linux 5(32位系统),其中gcc版本为4.1.2,但是该版本gcc在编译qt-x11-2.3.2.tar.gz、qt-embedded-2.3.10.tar.gz时出错,不得已,只能在重新低版本的gcc。
由于gcc-3.2.2能成功编译qt-x11-2.3.2.tar.gz、qt-embedded-2.3.10.tar.gz,所以选择安装gcc-3.2.2。
我试验了几种方法都没有成功:1.找来gcc-3.2.2的源代码,直接用gcc-4.1.2编译安装,结果编译过程中出错2.找来gcc-3.2.2的rpm包,包括compat-gcc-7.3-2.96.118.i386.rpm、compat-gcc-c++-7.3-2.96.118.i386.rpm、compat-libstdc++-7.3-2.96.118.i386.rpm、compat-libstdc++-devel-7.3-2.96.118.i386.rpm四个包,直接安装,结果不能进行,原因不得知3.查资料得知,先卸载gcc-4.1.2,然后再安装低版本gcc-3.2.2。
我用rpm -e gcc 卸载gcc-4.1.2,结果是有很多依赖包,也不能卸载最后一个办法是,找来gcc-3.4.5源码包,先用gcc-4.1.2编译gcc-3.4.5,然后再用gcc-3.4.5编译gc-3.2.2。
在用gcc-4.1.2编译gcc-3.4.5时还是出错,提示说是ada语言有问题。
但是,ada语言是什么东西我都不知道,所以在配置时加了一个选项--enable-languages选项,如下所示./configure --prefix=/home/fshen/gcc-3.4.5 --enable-languages=c,c++,然后make编译,结果很顺利,成功了。
AFEPack安装过程——qixinbo
![AFEPack安装过程——qixinbo](https://img.taocdn.com/s3/m/22d89bf99e314332396893bc.png)
安装AFEPack软件包,需要提前安好的软件有gcc、g++、doxygen、automake(1.11版本)、dx、emacs、vim。
第一步:我会有一个用户名,比如为qixinbo。
在home/qixinbo下建立files,include,lib 三个目录。
其中include目录是用于存放程序编译时调用的.h头文件,lib目录是用于存放动态链接库.so文件然后将boost_1_37_0.tar.bz2,deal.nodoc-6.3.1.tar.gz,AFEPack-snapshot.tar.gz,easymesh.c.gz四个文件放在files里。
第二步:安装boost头文件。
将boost_1_37_0.tar.bz2解压到files里,即运行tar jxvf boost_1_37_0.tar.bz2命令。
解压后会得到一个boost_1_37_0目录,该目录下有一个boost目录,将该目录拷贝到include文件夹里,即cp –r boost /home/qixinbo/include第三步:安装deal.II。
注:个人建议不要下载太高版本,过高版本可能会报Point歧义,原因是由于部分版本deal.II修改了底层网格的一些架构。
现deal.II 7.0.0及之前版本已测试可以使用。
(1) 将deal.nodoc-6.3.1.tar.gz解压到files里,即运行tar zxvf deal.nodoc-6.3.1.tar.gz 命令。
解压后会得到一个deal.II目录。
进入该目录,运行./configure如果configure通过,就运行make base lac在configure过程如果出现提示不存在doxygen,表示它没有被安装在系统里面,请在网上google搜索下载,把这个安装上。
(2) 进入/home/qixinbo/include文件夹,链接头文件。
即运行ln –sf /home/qixinbo/files/deal.II/base/include/base .ln –sf /home/qixinbo/files/deal.II/lac/include/lac .ln –sf /home/qixinbo/files/deal.II/contrib/tbb/tbb22_20090809oss/include/tbb .请注意最后一个点前面有一个空格。
ubuntu常用代码
![ubuntu常用代码](https://img.taocdn.com/s3/m/e8eb85a7d1f34693daef3e17.png)
一直想装个Linux系统玩一下的,可是一直又懒得动,怕麻烦。
这次是不得不装了,因为工作中,有些程序需要在Linux系统下开发,在公司电脑上装了个虚拟机Virtual Box,然后在上面装了个ubuntu10.04进行软件开发。
在公司使用虚拟机总感觉不爽,而且系统和开发环境都是英文版的,对于初次接触ubuntu 并且英文也不是很好的人来说简直是受罪,所以回家自己装了个最新版的ubuntu12.04中文版,以求尽早熟悉该环境下的编程。
装完ubuntu12.04才知道,ubuntu12.04和ubuntu10.04虽然同是ubuntu系统,但是操作界面完全变了样,从表面上简直可以说是两个系统,不过对于我来说,也没有什么,反正两个都不熟悉,本文下面的内容主要是针对ubuntu12.04系统。
下面简单列举一下ubuntu下的常用软件:1、浏览器:Firefox+ Downthemall(插件)、Chromium2、视频:SMplayer、GNOMEMplayer3、音频:Exaile,其实我觉得自带的音乐播放器已经够用了4、翻译软件:星际译王(stardict)5、杀毒软件:小红伞(AviraAntivar Personal),安装必要性不大6、Windows软件模拟器(Wine):可以让Windows软件运行在Linux环境下(当然不是所有的软件都可以),安装和使用时都使用wine,如:wine/<path>/xxx.exe下面是一些不得不说的命令行操作了:相对与Windows的图形界面操作不同,Linux的很多操作都需要在终端下输入命令进行,而且由于用户权限的严格限制,在图形界面上很多文件夹是无法操作的,当然也并不是完全不可能,按住组合键Alt+F2,然后输入gksu nautilus用root的身份打开文件浏览器,输入密码,这时你就可以不受权限的限制了。
如果是在命令行模式下,提升权限就需要sudo指令了,还可以使用su命令来实现在命令行中提高权限,su命令用于临时切换至任意用户,包括root,如:提升之user1:su user1、提升至root:sudo su root。
Linux离线(手动)升级GCC
![Linux离线(手动)升级GCC](https://img.taocdn.com/s3/m/0e5cc134657d27284b73f242336c1eb91a3733a5.png)
Linux离线(手动)升级GCC本文介绍在系统无法连接互联网的情况下,如何升级GCC。
离线和在线升级的主要区别在于,如果可以联网,在升级gcc前的需要安装的依赖包,可以通过运行gcc安装包下的脚本自行下载安装,免去了很多的麻烦。
当前系统及GCC版本OS:Red Hat 6.3GCC:4.4.6首先下载gcc安装包,本文为gcc-4.8.5.tar.gz,解压后,如果直接运行安装目录下的configure脚本,可能会因为当前系统的GMP,MPFR,MPC的版本过低而抛出如下的错误:...configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.•1•2如果是在联网环境,可以运行安装目录下的”./contrib/download_prerequisites”脚本来下载相关的依赖。
而由于我们是在局域网内,所以需要到因特网中下载这三个安装包,然后逐个安装:•gmp: 安装包下载路径ftp:///gnu/gmp/•mpfr:安装包下载路径•mpc: 安装包下载路径•此处使用的安装包为gcc-4.8.5.tar.gz,gmp-5.0.5.tar.bz2,mpfr-3.0.1.tar.gz,mpc-1.0.1.tar.gz.安装gmpGMP是一个任意精度的开源算术库,可用于符号整数,有理数,浮点数计算。
# tar -jxvf gmp-5.0.5.tar.bz2# cd gmp-5.0.5# ./configure# make & make check# make install•1•2•3•4•5安装mpfrmpfr主要为提供C/C++多精度浮点运算。
# tar -zxvf mpfr-3.0.1.tar.gz# cd mpfr-3.0.1# ./configure --with-gmp-include=/usr/local/include --with-gmp-lib=/usr/local/lib# make & make check# make install•1•2•3•4•5安装mpcGnu Mpc为C/C++提供高精度,正确舍入的复数计算。
gcc安装教程
![gcc安装教程](https://img.taocdn.com/s3/m/73bead1f59eef8c75fbfb3e4.png)
详解Linux安装GCC方法下载:/gnu/gcc/gcc-4.5.1/gcc-4.5.1.tar.bz2浏览:/gnu/gcc/gcc-4.5.1/查看Changes:/gcc-4.5/changes.htm现在很多程序员都应用GCC,怎样才能更好的应用GCC。
目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语言。
本文以在Redhat Linux安装GCC4.1.2为例(因在项目开发过程中要求使用,没有用最新的GCC 版本),介绍Linux安装GCC过程。
安装之前,系统中必须要有cc或者gcc等编译器,并且是可用的,或者用环境变量CC指定系统上的编译器。
如果系统上没有编译器,不能安装源代码形式的GCC 4.1.2。
如果是这种情况,可以在网上找一个与你系统相适应的如RPM等二进制形式的GCC软件包来安装使用。
本文介绍的是以源代码形式提供的GCC软件包的安装过程,软件包本身和其安装过程同样适用于其它Linux和Unix系统。
系统上原来的GCC编译器可能是把gcc等命令文件、库文件、头文件等分别存放到系统中的不同目录下的。
与此不同,现在GCC建议我们将一个版本的GCC安装在一个单独的目录下。
这样做的好处是将来不需要它的时候可以方便地删除整个目录即可(因为GCC没有uninstall功能);缺点是在安装完成后要做一些设置工作才能使编译器工作正常。
在本文中采用这个方案安装GCC 4.1.2,并且在安装完成后,仍然能够使用原来低版本的GCC编译器,即一个系统上可以同时存在并使用多个版本的GCC编译器。
按照本文提供的步骤和设置选项,即使以前没有安装过GCC,也可以在系统上安装上一个可工作的新版本的GCC编译器。
1 下载在GCC网站上()或者通过网上搜索可以查找到下载资源。
目前GCC的最新版本为4.2.1。
可供下载的文件一般有两种形式:gcc-4.1.2.tar.gz和gcc-4.1.2.tar.bz2,只是压缩格式不一样,内容完全一致,下载其中一种即可。
linux 安装c标准库
![linux 安装c标准库](https://img.taocdn.com/s3/m/4533610b326c1eb91a37f111f18583d049640fd8.png)
linux 安装c标准库在Linux系统上安装C标准库是程序员们经常需要进行的操作之一。
C标准库是C语言的核心库,包含了大量的函数和宏定义,能够为程序员提供丰富的功能支持。
本文将介绍在Linux系统上如何安装C标准库,以及安装过程中可能遇到的一些常见问题和解决方法。
首先,我们需要明确一点,Linux系统上通常已经预装了C标准库,因此大部分情况下不需要额外安装。
但是,如果你的系统中没有安装C标准库,或者需要更新版本,那么你就需要进行手动安装了。
要在Linux系统上安装C标准库,你可以通过包管理器来进行安装。
不同的Linux发行版可能使用不同的包管理器,比如Debian和Ubuntu使用apt,Red Hat和CentOS使用yum,Arch Linux使用pacman等。
以Debian和Ubuntu为例,你可以通过以下命令来安装C标准库:```。
sudo apt-get update。
sudo apt-get install build-essential。
```。
上面的命令中,`build-essential`是一个包含了C标准库的软件包,通过`apt-get install`命令来安装它。
在安装过程中,系统可能会提示你输入管理员密码以确认安装操作。
如果你使用的是其他发行版,可以根据相应的包管理器来进行安装。
一般来说,安装C标准库的过程并不复杂,只需要执行相应的安装命令即可。
在安装完成后,你可以通过简单的测试程序来验证C标准库是否安装成功。
创建一个名为`test.c`的文件,内容如下:```c。
#include <stdio.h>。
int main() {。
printf("Hello, world!\n");return 0;}。
```。
然后使用以下命令来编译和运行程序:```。
gcc test.c -o test。
./test。
```。
如果一切顺利,你应该能够看到输出的`Hello, world!`,这说明C标准库已经成功安装并可以正常使用了。
如何在Linux系统中安装编译器
![如何在Linux系统中安装编译器](https://img.taocdn.com/s3/m/8ca9d8ac112de2bd960590c69ec3d5bbfd0ada8c.png)
如何在Linux系统中安装编译器Linux系统是一款优秀的开源操作系统,被广泛应用于各种领域。
如果你想要在Linux系统中进行编程开发工作,首先需要安装一个编译器。
本文将介绍如何在Linux系统中安装编译器的步骤和方法。
在Linux系统中,常用的编译器有C/C++编译器和Java编译器。
下面将以这两种编译器为例,详细介绍它们的安装步骤。
第一步:打开终端在Linux系统中,我们需要通过终端来执行命令。
终端是与系统直接交互的工具,类似于Windows系统中的命令提示符。
你可以通过键盘快捷键Ctrl+Alt+T来打开终端窗口。
第二步:更新软件源列表在安装任何软件之前,我们都需要更新系统的软件源列表。
软件源列表包含了系统可供下载和安装的软件包信息。
在终端中执行以下命令来更新软件源列表:```sudo apt update```该命令会向系统的软件源服务器发送请求,从而获取最新的软件包信息。
第三步:安装C/C++编译器在Linux系统中,常用的C/C++编译器是GNU编译器套装(GCC)。
执行以下命令来安装GCC编译器:```sudo apt install build-essential```该命令会下载并安装GCC编译器及其相关组件。
安装完成后,你就可以在终端中使用gcc和g++命令来编译C/C++程序了。
第四步:安装Java编译器在Linux系统中,我们可以使用OpenJDK或者Oracle JDK作为Java编译器。
以下是安装OpenJDK和Oracle JDK的步骤。
安装OpenJDK:执行以下命令来安装OpenJDK:```sudo apt install default-jdk```该命令会下载并安装OpenJDK编译器及其相关组件。
安装完成后,你可以在终端中使用javac命令来编译Java程序。
安装Oracle JDK:如果你需要使用Oracle JDK编译器,你可以按照以下步骤进行安装:1. 打开Oracle官方网站,并下载适合你系统的Oracle JDK安装包(以tar.gz或者.deb为扩展名)。
更改gcc默认版本,实现gcc版本升降级
![更改gcc默认版本,实现gcc版本升降级](https://img.taocdn.com/s3/m/a660ec13df80d4d8d15abe23482fb4daa58d1d10.png)
更改gcc默认版本,实现gcc版本升降级可以让系统存在两个gcc版本,我安装的Ubuntu16.04默认gcc 5.6,但是为了编译linux0.11想要降级到gcc 3.4,原⽂是gcc 4.8和gcc 6.2切换。
按照如下步骤即可:(1)在Ubuntu 16.04上安装⽼版gcc⼗分简单,直接⽤apt-get命令下载即可。
sudo apt-get install gcc-4.8安装完成后输⼊命令gcc --verison查看gcc的版本,此时还是6.2。
(2)设置gcc的默认版本。
设置之前可以先输⼊命令ls /usr/bin/gcc* 查看gcc 4.8版本是否安装成功。
然后输⼊下⾯的命令设置默认版本:sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8100最后的数字为优先级(越⼤越⾼),因为只有⼀个4.8版本作为alternatives,可以不要纠结数字,这样设就⾏了(3)然后可以输⼊以下命令查看设置结果(⾮必须)sudo update-alternatives --config gcc因为只设置了⼀个,所以显⽰结果为:"链接组 gcc (提供 /usr/bin/gcc)中只有⼀个候选项:/usr/bin/gcc-4.8⽆需配置.",如果有多个则会显⽰⼀个按优先级的列表.(4)最后再次输⼊命令gcc -version查看gcc的版本已经变成4.8啦...就成功啦.(5)切换为6.2版本:现在默认版本已经是4.8版本,如果想⽤6.2版本,则gcc-6.2 将gcc6.2的优先级调⼤。
g++ 等其他软件也是这样设置进⾏版本升级/降级.当以上设置不需要的时候输⼊以下命令删除:sudo update-alternatives --remove gcc /usr/bin/gcc-4.8update-alternatives的使⽤update-alternatives命令常⽤来处理Linux中软件的多版本共存。
Linux下C开发环境的搭建过程---gcc、glibc安装和升级操作方法
![Linux下C开发环境的搭建过程---gcc、glibc安装和升级操作方法](https://img.taocdn.com/s3/m/1896c67ba517866fb84ae45c3b3567ec102ddc9b.png)
Linux下C开发环境的搭建过程---gcc、glibc安装和升级操作⽅法Linux下C开发环境的搭建过程——安装gcc前⾔在Linux系统中,软件安装程序⽐较纷繁复杂,不过最常见的有两种:1)⼀种是软件的源代码,您需要⾃⼰动⼿编译它。
这种软件安装包通常是⽤gzip压缩过的tar包(后缀为.tar.gz)。
2)另⼀种是软件的可执⾏程序,你只要安装它就可以了。
这种软件安装包通常被是⼀个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm。
Linux和C天⽣就有不解之缘,Linux操作系统的内核主要就是⽤C写的,另外Linux下的很多软件也是⽤C写的,特别是⼀些著名的服务软件,⽐如MySQL、Apache等。
初学者在编译MySQL这样的软件时,可能遇到过各式各样的错误,其实只要你初步了解了Linux的C开发环境,你就能⾃⾏解决这些错误。
Linux的C开发环境与Windows的有所不同,在Linux下,⼀个完整的C开发环境由以下三个部分组成:1、函数库:glibc要构架⼀个完整的C开发环境,Glibc是必不可少的,它是Linux下C的主要函数库。
Glibc有两种安装⽅式:A、安装成测试⽤的函数库——在编译程序时⽤不同的选项来试⽤新的函数库B、安装成主要的C函数库——所有新编译程序均⽤的函数库Glibc含⼏个附加包:LinuxThreads、locale和crypt,通常它们的⽂件名随版本不同⽽类似于下列⽂件名:glibc-2.06.tar.gzglibc-linuxthreads-2.0.6.tar.gzglibc-localedate-2.0.6.tar.gzglibc-crypt-2.0.6.tar.gz2、编译器:gccgcc(GNU CCompiler)是GNU推出的功能强⼤、性能优越的多平台编译器,gcc编译器能将C、C++语⾔源程序、汇编程序和⽬标程序编译、连接成可执⾏⽂件,以下是gcc⽀持编译的⼀些源⽂件的后缀及其解释:3、系统头⽂件:glibc_header缺少了系统头⽂件的话,很多⽤到系统功能的C程序将⽆法编译。
linux下安装gcc
![linux下安装gcc](https://img.taocdn.com/s3/m/a02fe4cf89eb172ded63b708.png)
为了在Ubuntu下安装那令人悲催的GCC,小弟可是绞尽脑汁,连干三天。
当我搞清楚那些破软件m4,gmp mpfr,mpc等之间的依赖关系,依照强大的度娘提示下,安装了一遍又一边一边又一边·····它就是不成!shit!就当俺不得不做出抛弃GCC的念头之时,又是度娘!原来Ubuntu11.04自带GCC的!!!在此建议各位大虾,在安装GCC之前,先check一下你的Linux 中是否自带了GCC。
下面是小弟,在这悲催的三天所学到如何在Ubuntu下安装GCC的过程:安装过程第一步,从网站上下载文件gcc-4.6.0.tar.bz2第二步,将该文件拖至tmp目录下。
然后解压缩,在命令行tar vxjf gcc-4.1.1.tar.bz2,解压后你可以看到在tmp目录下有gcc-4.6.0文件第三步,对源文件进行配置,用命令mkdirgcc-buildcdgcc-build../gcc-4.6.0/configure --prefix=/usr/local/gcc-4.6.0 --enable-threads=posix --disable-checking--disable-multilib --enable-languages=c,c++编译错误提醒:提醒信息:configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.说明要安装gcc需要GMP、MPFR、MPC这三个库,于是又从网上下了三个库的压缩包。
由于MPFR依赖GMP,而MPC依赖GMP和MPFR,所以要先安装GMP,其次MPFR,最后才是MPC。
这里三个库我用的版本分别是gmp5.0.1,mpfr2.4.2和mpc0.8.1。
先开始安装GMP。
解压GMP的压缩包后,得到源代码目录gmp-5.0.1。
Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题)
![Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题)](https://img.taocdn.com/s3/m/a5f10f2766ec102de2bd960590c69ec3d5bbdbee.png)
Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题)Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题)rpm安装gcc时碰到的有关问题解决(解决gcc依赖有关问题)提⽰:error: Failed dependencies:cloog-ppl >= 0.15 is needed by gcc-4.4.7-4.el6.x86_64cpp = 4.4.7-4.el6 is needed by gcc-4.4.7-4.el6.x86_64rpm安装cloog-ppl会报:error: Failed dependencies:libppl.so.7()(64bit) is needed by cloog-ppl-0.15.7-1.2.el6.x86_64libppl_c.so.2()(64bit) is needed by cloog-ppl-0.15.7-1.2.el6.x86_64rpm安装cpp会报:error: Failed dependencies:libmpfr.so.1()(64bit) is needed by cpp-4.4.7-4.el6.x86_64安装软件包前期准备⼯作:1.挂载光盘镜像到mnt⽬录下。
(学习推荐),下⾯说说挂载命令[root@localhost ~]# mount /dev/cdrom /mnt/[root@localhost Packages]#挂载成功后,进⼊到包所在⽬录[root@localhost ~]# cd /mnt/Packages/[root@localhost Packages]#2.⽹上去下载需要安装的包。
在安装gcc时我们基本都会碰到这样的错误提⽰:1》安装gcc包,并报错了:[root@localhost Packages]# rpm -ivh gcc-4.4.7-4.el6.x86_64.rpmwarning: gcc-4.4.7-4.el6.x86_64.rpm: Header V3 RSA/SHA1Signature, key ID c105b9de: NOKEYerror: Failed dependencies:cloog-ppl >= 0.15 is needed by gcc-4.4.7-4.el6.x86_64cpp = 4.4.7-4.el6 is needed by gcc-4.4.7-4.el6.x86_64[root@localhost Packages]#上⾯的报错说明:缺少两个依赖关系包(cloog-ppl和cpp),那么我们只需要安装这两个包就⾏了。
Redhat linux上安装 gcc编译器
![Redhat linux上安装 gcc编译器](https://img.taocdn.com/s3/m/f40c3ad8ce2f0066f533220b.png)
在Linux系统中,软件安装程序比较纷繁复杂,不过最常见的有两种:1)一种是软件的源代码,您需要自己动手编译它。
这种软件安装包通常是用gzip压缩过的tar包(后缀为.tar.gz)。
2)另一种是软件的可执行程序,你只要安装它就可以了。
这种软件安装包通常被是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm。
当然,也有用rpm格式打包的源代码,用gzip压缩过的可执行程序包。
只要您理解了以下的思路,这两种形式的安装包也不在话下了。
下面,我们就分成两个部分来说明软件安装思路:第一部分:搞定.tar.gz1.首先,使用tar -xzvf来解开这个包,如:#tar -xzvf apache_1_3_6_tar.gz这样就会在当前目录中创建了一个新目录(目录名与.tat.gz包的文件名类似),用来存放解压了的内容。
如本例中就是apache_1.3.62.进入这个目录,再用ls命令查看一下所包含的文件,如:#cd apache_1.3.6#ls你观察一下这个目录中包含了以下哪一个文件:configure、Makefile还是Imake。
1)如果是configure文件,就执行:#./configure#make#make install2)如果是Makefile文件,就执行:#make#make install3)如果是Imake文件,就执行:#xmkmf#make#make install3.如果没有出现什么错误提示的话,就搞定了。
至于软件安装到什么地方,通常会在安装时出现。
否则就只能查阅一下README,或者问问我,:-)如果遇到错误提示,也别急,通常是十分简单的问题:1)没有安装C或C++编译器;确诊方法:执行命令gcc(C++则为g++),提示找不到这个命令。
解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:#rpm -ivh gcc* (哈哈,我们用到了第二种安装方式)2)没有安装make工具;确诊方法:执行命令make,提示找不到这个命令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
编译安装:
1.MPFR和MPC都依赖于GMP包,所以首先安装GMP
#tar -xjvf gmp-5.0.5.tar.bz2
#cd gmp-5.0.5
#./configure (可以使用配置参数--prefix=指定安装位置,这里使用默认
/usr/local/include和/usr/local/lib)
#make
#make check (这一步用来确保编译正确)如果check出类似
(error while loading shared libraries: libgmp.so.10: /
cannot open shared object file: No such file or directory) 这样的错误,执行
“sudo ldconfig -v”命令,然后重新./configure、make、make check
#make install
2.安装MPFR
#tar -xjvf mpfr-3.1.0.tar.bz2
#cd mpfr-3.1.0
#./configure --with-gmp-include=/usr/local/include --with-gmp-lib=/usr/local/lib
#make
#make check
#make install
3.安装MPC
#tar -xjvf mpc-0.9.tar.gz
#cd mpc-0.9
#./configure --with-gmp-include=/usr/local/include --with-gmp-lib=/usr/local/lib
#make
#make check
#make install
至此,三个库安装完毕,都是安装在默认位置/usr/local/include和/usr/local/lib,为了防止GCC编译时找不到这三个库,需要确认库位置是否在环境变量
LD_LIBRARY_PATH中,查看环境变量内容可以用命令
#echo $LD_LIBRARY_PATH
如果该环境变量中不包含/usr/local/lib库的位置,打开/etc/profile文件需要添加库位置,命令如下
#vim /etc/profile
Vim插入模式下:export
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib"
:wq 保存退出
#source /etc/profile (重新载入此配置环境变量的文件)
4.安装GCC
1)解压
#tar -xjvf gcc-4.6.3.tar.gz
新生成的gcc-4.6.3这个目录被称为源目录,用${srcdir}表示它。
以后在出现${srcdir}的地方,应该用真实的路径来替换它。
用pwd命令可以查看当前路径
2)建立目标目录
目标目录(用${objdir}表示)是用来存放编译结果的地方。
GCC建议编译后的文件不要放在源目录${srcdir]中(虽然这样做也可以),最好单独存放在另外一个目录中,而且不能是${srcdir}的子目录。
例如,可以这样建立一个叫gcc-build 的目标目录(与源目录${srcdir}是同级目录):
#mkdir gcc-build
#cd gcc-build
以下的操作(配置、编译、安装)主要是在目标目录${objdir} 下进行。
3)配置
配置的目的是决定将GCC编译器安装到什么地方(${destdir}),支持什么语言以及指定其它一些选项等。
其中,${destdir}不能与${objdir}或${srcdir}目录相同。
配置是通过执行${srcdir}下的configure来完成的。
其命令格式为(记得用你的真实路径替换${destdir}):
# ${srcdir}/configure --prefix=${destdir} [其它选项]
例如,如果想将GCC 4.6.3安装到/usr/local/gcc-4.6.3目录下,则${destdir}就表示这个路径。
在我的机器上,我是这样配置的:
# ../gcc-4.6.3/configure --prefix=/usr/local/gcc-4.6.3
--enable-threads=posix --disable-checking --enable--long-long
--with-system-zlib --enable-languages=c,c++,java
将GCC安装在/usr/local/gcc-4.6.3目录下,支持C/C++和JAVA语言,其它选项参见GCC提供的帮助说明
4)编译
#make
#../gcc-4.6.3/configure --prefix=/usr/local/gcc-4.6.3 --enable-threads=posix --disable-checking --enable--long-long
--with-zlib-include=/usr/src/linux-2.6.32.12-0.7-obj/x86_64/default/include/config/zl ib
--with-zlib-lib=/usr/src/linux-2.6.32.12-0.7-obj/x86_64/default/include/config/zlib --enable-languages=c,c++,java
#make
5)安装
# make install
至此,GCC 4.6.3安装过程就完成了。
6)其它设置
GCC 4.6.3的所有文件,包括命令文件(如gcc、g++)、库文件等都在${destdir}目录下分别存放,如命令文件放在bin目录下、库文件在lib下、头文件在include下等。
由于命令文件和库文件所在的目录还没有包含在相应的搜索路径内,所以必须要作适当的设置之后编译器才能顺利地找到并使用它们。
6.1)gcc、g++、gcj的设置
要想使用GCC 4.6.3的gcc等命令,简单的方法就是把它的路径${destdir}/bin放在环境变量PATH中。
我不用这种方式,而是用符号连接的
方式实现,这样做的好处是我仍然可以使用系统上原来的旧版本的GCC编译器。
首先,查看原来的gcc所在的路径:
# which gcc
在我的系统上,上述命令显示:/usr/bin/gcc。
因此,原来的gcc命令在/usr/bin目录下。
我们可以把GCC 4.6.3中的gcc、g++、gcj等命令在/usr/bin 目录下分别做一个符号连接:
#cd /usr/bin
#ln -s ${destdir}/bin/gcc gcc463
#ln -s ${destdir}/bin/g++ g++463
#ln -s ${destdir}/bin/gcj gc463
这样,就可以分别使用gcc463、g++463、gcj463来调用GCC 4.6.3的gcc、g++、gcj完成对C、C++、JAVA程序的编译了。
同时,仍然能够使用旧版本的GCC编译器中的gcc、g++等命令。
6.2) 库路径的设置
将${destdir}/lib路径添加到环境变量LD_LIBRARY_PATH中,最好添加到系统的配置文件中,这样就不必要每次都设置这个环境变量了。
例如,如果GCC 4.6.3安装在/usr/local/gcc-4.6.3目录下,在Suse Linux 下可以直接在命令行上执行或者在文件/etc/profile中添加下面一句:
export LD_LIBRARY_PATH=/usr/local/gcc-4.6.3/lib:$LD_LIBRARY_PATH
7) 测试
用新的编译命令编译你以前的C、C++程序,检验新安装的GCC编译器是否能正常工作。
#gcc –v (可以查看以前的gcc版本)
#gcc463 –v (可以查看新安装的版本)。