技术标签: linux gcc c 的安装
使用centos开发C语言程序,GCC编译时报错:bash:gcc:command not found
解决方式,安装gcc环境
我们知道,用yum install gcc可以安装gcc编译环境,关于 GCC 在 CentOS 下通过 yum 安装默认版本号,CentOS 5 是 4.1.2;CentOS 6 是 4.4.7;CentOS 7 是 4.8.3。
很多时候在编译安装软件都需要高版本的 GCC,否则就会报错。
那么如何升级 GCC 的版本呢?
首先要确认升级到的 GCC 版本号。
目前 GCC 的最新版已经到了 5.2,而 CentOS 7 则依然使用其 4.8,所以基于兼容性考虑,我选择升级到 4.8.5。
GCC 官网:https://gcc.gnu.org
下面开始一步一步来编译安装 GCC 4.8.5,需要注意的是,在编译安装 GCC 之前,系统里必须先要通过 yum 安装老版本的 GCC 和依赖库。
如果是在 x86_64 系统下编译的话,还需要安装 libgcc.i686 glibc-devel.i686 才行。
yum install -y gcc texinfo-tex flex zip libgcc.i686 glibc-devel.i686
当然,如果是在 CentOS 5 x86_64 系统下安装,则是如下命令:
yum install -y gcc texinfo-tex flex zip libgcc.i386 glibc-devel.i386
同时需注意,编译安装 GCC 内存不小于 1GB,Swap 不小于 1GB,硬盘最低不小于 10GB,否则极有可能会中途报错退出。
编译安装完后,目录 gcc-4.8.5 将会有 5GB 之多。
1、下载源码
wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz
2、下载依赖包
编译安装 GCC 需要依赖 mpc,mpfr,gmp包。好在 GCC 源码里自带脚本可以轻松下载依赖包。
tar zxf gcc-4.8.5.tar.gz
cd gcc-4.8.5
./contrib/download_prerequisites
在此脚本里可以看到依赖包的版本号依次是 mpc-0.8.1,mpfr-2.4.2,gmp-4.3.2。
3、编译安装
mkdir gcc-build-4.8.5
cd gcc-build-4.8.5
../configure --prefix=/usr
make && make install
为了避免安装后系统里出现多个版本的 GCC,这里直接将编译安装的目录指定为 /usr,如果不指定 –prefix,则会默认安装到 /usr/local 下。
GCC 4.8.5 光是源代码就有105MB,因此可以预见整个编译过程需要很长时间(差不多 2 个小时左右)。
4、查看版本号
gcc --version
gcc (GCC) 4.8.5
g++ --version
g++ (GCC) 4.8.5
which gcc
/usr/bin/gcc
which g++
/usr/bin/g++
注:本次是在 CentOS 6.7 x86_64 下安装成功。
5、测试程序
cd ~
创建一个 main.cpp 文件,内容如下:
#include using namespace std;
int main() {
cout << "Hello world!" << endl;
return 0;
}
编译 main.cpp,执行如下命令:
g++ main.cpp -o main
执行生成的文件:
./main
输出如下:
Hello world!
写在最后
通过 rpm 命令查询 GCC 包的安装情况:
rpm -qa | grep gcc
输出如下:
gcc-4.4.7-16.el6.x86_64
libgcc-4.4.7-16.el6.x86_64
libgcc-4.4.7-16.el6.i686
gcc-c++-4.4.7-16.el6.x86_64
因此通过以上步骤编译安装 GCC 后,请慎用 yum update 或者通过 yum 来升级 GCC 的命令。
In V$MEMORY_RESIZE_OPS / V$SGA_RESIZE_OPS we can have three different automatic re-size operations:o DEFERREDo MANUALo IMMEDIATE- Deferred requests are low priority requests coming from ad
Linux将中断处理分为上下两部分,上半部分主要处理紧急的,必须马上处理的事情,下半部分处理不那么紧急的事情,linux内核也提供了相应的机制,这里使用理论课中的tasklet机制来进行实验。本节代码是在上节的基础上稍微增加一部分代码即可。首先在中断服务例程,即上半部分中添加tasklet的init函数,即将下半部分函数进行注册。最主要的是要将下半部分处理函数挂载上去。最后调用tasklet_schedule函数进行调度最后用到tasklet_kill,用来注销掉我们的taskletboo
需求:将数据集随机分为训练集和测试集,并将随机分类的图像保存至对应的文件夹。让train+test=原始数据,且带有随机比例。原因:需要将初始化数据集随机分配之后,再将训练集做数据增光,所以不能直接采用txt随机生成路径的方式。原始数据:0,1train:0,1;把原始数据的内容复制到train里,再做分割。test:0,1# coding=utf-8# 随机生成训练集和测试集# 对一个文件夹下的图像生成txt,然后随机选取里面的内容,然后保存到不同的文件夹。# codin.
云服务器ECS 第一篇:FTP文件服务器搭建目前打算将项目部署到云服务器上,并配置系统运行环境,搭建FTP服务器是系统部署的第一步,从这里开始!!!关于FTP:FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操
为什么80%的码农都做不了架构师?>>> ...
python中pandas是数据分析的利器,有两种基本的数据形式,Series、DataFrame两种,Series是单列的,DataFrame是平面的二维或者多维的。今天遇到一个问题,如何将两个dataFrame合并:总的来说有两种形式的合并:列名相同的合并,行名相同的合并列名相同的合并:append()函数,假设有如下数据。df = pd.DataFrame(np.random...
# @File : getfile.py# @Author: Wang Zhimin# @Date : 2019/10/11string path = "D:/car2.mp4";int pos = path.find_last_of('/');string s(path.substr(pos + 1));string name = s.substr(0, s.rfind("."...
一、基本配置elasticsearch的config文件夹里面有两个配置文 件:elasticsearch.yml和logging.yml,第一个是es的基本配置文件,第二个是日志配置文件,es也是使用log4j来记录日 志的,所以logging.yml里的设置按普通log4j配置文件来设置就行了。下面主要讲解下elasticsearch.yml这个文件中可配置的东西。cluster.na
MyBatis中传参时为什么要用#{} MyBatis中传参时为什么要用#{},这个问题和MyBatis如何防止SQL注入类似。不过在解释这个问题之前,先解释一下什么是SQL注入,还有些称作注入攻击这个问题。 SQL注入就是SQL对传入参数的拼接。sql语句是String类型的,如果用+来拼接,表示的是直接操作这个String类型的字符串,这是改变了sql的具体内容了,如果用#{id},表示的是操作字改变里面字段的参数值。例如:用+拼接的:"select*fromu...
【问题描述】“蚂蚁庄园”的小鸡拍球游戏中,有三种可能的得分:5分、8分和10分。现从键盘输入一个整数的得分值,请输出该局游戏可能的得分组合。【输入形式】输入只有一行,包括一个正整数n。【输出形式】输出可能有若干行,每行是一种得分的序列,包括得5分的次数、得8分和得10分的次数,前导符和次数之间用英文冒号分隔,相邻得分次数之间用一个空格分隔。【样例输入】40【样例输出】5:0 8:0 1...
因为colab是域外的服务器,所以在国内想要上传数据集,速度是非常非常的慢,因此写下自己在解决问题时的一些方法。通过将数据集传到域外的一款软件,然后数据集传到colab我用的方法是先将数据集传到onedrive上面(放心传数据集到onedrive上面是很快的),然后将数据集通过onedrive传到谷歌云盘,然后将谷歌云盘上的数据集传到colab上。听起来很麻烦,其实很简单。第一步:登录到onedrive,然后将数据集传到文档这个文件夹下面,直接拉进去就行,必须传到文档才能进行我下面的操作。第二步
Ubuntu16.04搭建rust开发环境安装vscode进入vscode官网下载Linux下的安装包,使用dpkg命令安装sudo dpkg -i code_1.37.0-1565227985_amd64.deb等待安装完成,搜索vs可以直接找到,为了方便,将其添加到启动器。如果不习惯英文,可以对vscode进行汉化,打开vscode,快捷键Shift + Ctrl + P,输入Configure Display Language进行安装即可,安装完毕需要重启vscode。安装rus