温馨提示×

centos gcc依赖什么库

小樊
37
2026-10-11 14:45:05
栏目: 智能运维

在 CentOS 上,gcc(GNU Compiler Collection) 本身以及编译 C/C++ 程序时,依赖的“库”可以分为几类:


一、gcc 安装所依赖的系统库(RPM 依赖)

在 CentOS 中,通过 yum / dnf 安装 gcc 时,通常会自动安装以下依赖包:

1. 核心依赖

  • glibc(GNU C Library)
  • glibc-devel(C 头文件和静态库)
  • glibc-common
  • binutils(汇编器、链接器等)
  • cpp(C 预处理器)
  • libgcc(gcc 运行时库)
  • libgomp(OpenMP 支持)
  • libstdc++(C++ 标准库)
  • libstdc++-devel(C++ 头文件)

2. 常见安装命令

yum install gcc gcc-c++

会自动拉取上述依赖。


二、编译 C/C++ 程序时依赖的库

1. C 程序

最低依赖:

  • glibc(运行时)
  • glibc-devel(编译时头文件)

示例:

#include <stdio.h>

需要:

yum install glibc-devel

2. C++ 程序

额外依赖:

  • libstdc++
  • libstdc++-devel

示例:

#include <iostream>

需要:

yum install gcc-c++ libstdc++-devel

三、常用开发依赖库(不是 gcc 本身,但常一起用)

如果你做实际开发,通常还会需要:

开发工具组(推荐)

yum groupinstall "Development Tools"

包含:

  • gcc
  • g++
  • make
  • autoconf
  • automake
  • bison
  • flex
  • pkgconfig

常见第三方库(按需安装)

功能 包名
数学库 glibc-devel(默认包含 -lm)
线程 glibc-devel(-lpthread)
动态链接 glibc
SSL openssl-devel
压缩 zlib-devel
数据库 mysql-devel / postgresql-devel
XML libxml2-devel

四、gcc 自身运行时依赖(最小环境)

如果你在一个最小化系统运行 gcc 编译出的程序,至少需要:

  • glibc
  • libgcc
  • libstdc++(C++ 程序)

五、总结一句话

CentOS 上 gcc 依赖 glibc、binutils、cpp、libgcc、libstdc++;编译 C/C++ 程序还需要对应的 -devel 头文件包。

如果你有具体场景(例如:

  • 最小化容器
  • 交叉编译
  • 静态编译
  • CentOS 7 / 8 / Stream)

可以告诉我,我可以给更精确的依赖列表。

0 踩