Linux centOS 编译C/C++

简介: Linux centOS 编译C/C++

安装C和C++编译器

yum -y install gcc*

查看CenterOS系统信息

cat /etc/system-release
CentOS Linux release 8.2.2004 (Core)

查看gcc版本

gcc --version
gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-4)
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

升级编译器

yum -y install centos-release-scl devtoolset-8-gcc*

启用软件包

echo "source/opt/rh/devtoolset-8/enable" >> /etc/profile

安装库函数帮助文档

yum -y install man-pages

帮助文档使用

man 命令或函数
man 级别 命令或函数

man级别:

1-用户命令  //常用
2-系统接口
3-库函数    //常用
4-特殊文件,比如设备文件
5-文件
6-游戏
7-系统的软件包
8-系统管理命令
9-内核

编译

gcc C语言
g++ C++语言
gcc/g++ 选项 源代码文件1 源代码文件2 选代码文件n
-o  //指定输出文件名,不能和源文件名相同,如果不给出则生成a.out
-g  //如果相对源代码进行调试,必须加入
-On //在编译、链接过程中进行优化处理,生成的可执行程序效率更高
-O0 //默认编译选项,不做任何变化
-O/-O1  //对程序做部分编译优化,对于大函数,优化编译占用稍多的时间和相当大的内存,使用本项优化,编译器会尝试减小生成代码尺寸,以及缩短执行时间,但并不执行需要占用大量编译时间的优化
-O2 //是比O1更高级的选项,进行更多的优化。与O1比较而言,O2优化增加了编译时间的基础上,提高了生成代码的执行效率
-O3 //比O2更进一步的优化
-c  //只编译,不链接成为可执行文件,通常用于把文件编译成静态库或动态库

使用优化选项:1)编译时间更长 2)目标程序不可调试 3)有效果,但是不可能显著提升程序的性能

支持C++11

-std=c++11


相关文章
|
10天前
|
Linux 网络安全 Python
linux centos上安装python3.11.x详细完整教程
这篇文章提供了在CentOS系统上安装Python 3.11.x版本的详细步骤,包括下载、解压、安装依赖、编译配置、解决常见错误以及版本验证。
80 1
linux centos上安装python3.11.x详细完整教程
|
10天前
|
NoSQL Linux Redis
linux之centos安装redis
linux之centos安装redis
|
10天前
|
Linux Python
Linux之centos安装clinkhouse以及python如何连接
Linux之centos安装clinkhouse以及python如何连接
|
10天前
|
Linux
linux之centos安装dataease数据报表工具
linux之centos安装dataease数据报表工具
|
10天前
|
消息中间件 Linux
linux之centos安装rabbitmq
linux之centos安装rabbitmq
|
10天前
|
消息中间件 运维 Linux
linux之centos运维kafka
linux之centos运维kafka
|
10天前
|
消息中间件 Java Linux
linux 之centos7安装kafka;;;;;待补充,未完成
linux 之centos7安装kafka;;;;;待补充,未完成
|
17天前
|
编译器 C++
C++ 类构造函数初始化列表
构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。
60 30
|
6天前
|
并行计算 Unix Linux
超级好用的C++实用库之线程基类
超级好用的C++实用库之线程基类
12 4
|
6天前
|
C++ Windows
HTML+JavaScript构建C++类代码一键转换MASM32代码平台
HTML+JavaScript构建C++类代码一键转换MASM32代码平台
下一篇
无影云桌面