centos 下安装g++

本文介绍了在CentOS系统中正确安装G++的方法。当尝试使用`yum install g++`命令时,会收到找不到包的错误提示。正确的做法是使用`yum install gcc-c++`命令来完成安装。

参考文章:https://blog.youkuaiyun.com/wh921021/article/details/8765044

在centos下安装g++,如果输入 yum install g++,那么将会提示:

[plain]  view plain  copy
  1. [root@hugo hugo]# yum install g++  
  2. Loaded plugins: fastestmirror, refresh-packagekit, security  
  3. Loading mirror speeds from cached hostfile  
  4.  * base: centos.ustc.edu.cn  
  5.  * extras: centos.ustc.edu.cn  
  6.  * updates: centos.ustc.edu.cn  
  7. Setting up Install Process  
  8. No package g++ available.  
  9. Error: Nothing to do  

因为在centos下g++安装包名字叫做:gcc-c++

所以应该输入 yum install gcc-c++,即可。

[plain]  view plain  copy
  1. Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    Resolving Dependencies
    --> Running transaction check
    ---> Package gcc-c++.x86_64 0:4.8.5-28.el7_5.1 will be installed
    --> Processing Dependency: libstdc++-devel = 4.8.5-28.el7_5.1 for package: gcc-c++-4.8.5-28.el7_5.1.x86_64
    --> Processing Dependency: libstdc++ = 4.8.5-28.el7_5.1 for package: gcc-c++-4.8.5-28.el7_5.1.x86_64
    --> Processing Dependency: gcc = 4.8.5-28.el7_5.1 for package: gcc-c++-4.8.5-28.el7_5.1.x86_64
    --> Running transaction check
    ---> Package gcc.x86_64 0:4.8.5-16.el7 will be updated
    ---> Package gcc.x86_64 0:4.8.5-28.el7_5.1 will be an update
    --> Processing Dependency: libgomp = 4.8.5-28.el7_5.1 for package: gcc-4.8.5-28.el7_5.1.x86_64
    --> Processing Dependency: cpp = 4.8.5-28.el7_5.1 for package: gcc-4.8.5-28.el7_5.1.x86_64
    --> Processing Dependency: libgcc >= 4.8.5-28.el7_5.1 for package: gcc-4.8.5-28.el7_5.1.x86_64
    ---> Package libstdc++.x86_64 0:4.8.5-16.el7 will be updated
    ---> Package libstdc++.x86_64 0:4.8.5-28.el7_5.1 will be an update
    ---> Package libstdc++-devel.x86_64 0:4.8.5-28.el7_5.1 will be installed
    --> Running transaction check
    ---> Package cpp.x86_64 0:4.8.5-16.el7 will be updated
    ---> Package cpp.x86_64 0:4.8.5-28.el7_5.1 will be an update
    ---> Package libgcc.x86_64 0:4.8.5-16.el7 will be updated
    ---> Package libgcc.x86_64 0:4.8.5-28.el7_5.1 will be an update
    ---> Package libgomp.x86_64 0:4.8.5-16.el7 will be updated
    ---> Package libgomp.x86_64 0:4.8.5-28.el7_5.1 will be an update
    --> Finished Dependency Resolution


    Dependencies Resolved


    ============================================================================================================
     Package                      Arch                Version                        Repository            Size
    ============================================================================================================
    Installing:
     gcc-c++                      x86_64              4.8.5-28.el7_5.1               updates              7.2 M
    Installing for dependencies:
     libstdc++-devel              x86_64              4.8.5-28.el7_5.1               updates              1.5 M
    Updating for dependencies:
     cpp                          x86_64              4.8.5-28.el7_5.1               updates              5.9 M
     gcc                          x86_64              4.8.5-28.el7_5.1               updates               16 M
     libgcc                       x86_64              4.8.5-28.el7_5.1               updates              101 k
     libgomp                      x86_64              4.8.5-28.el7_5.1               updates              156 k
     libstdc++                    x86_64              4.8.5-28.el7_5.1               updates              303 k


    Transaction Summary
    ============================================================================================================
    Install  1 Package  (+1 Dependent package)
    Upgrade             ( 5 Dependent packages)


    Total download size: 31 M
    Is this ok [y/d/N]: y
    Downloading packages:
    Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
    (1/7): cpp-4.8.5-28.el7_5.1.x86_64.rpm                                               | 5.9 MB  00:00:00     
    (2/7): gcc-c++-4.8.5-28.el7_5.1.x86_64.rpm                                           | 7.2 MB  00:00:00     
    (3/7): gcc-4.8.5-28.el7_5.1.x86_64.rpm                                               |  16 MB  00:00:01     
    (4/7): libgcc-4.8.5-28.el7_5.1.x86_64.rpm                                            | 101 kB  00:00:00     
    (5/7): libgomp-4.8.5-28.el7_5.1.x86_64.rpm                                           | 156 kB  00:00:00     
    (6/7): libstdc++-4.8.5-28.el7_5.1.x86_64.rpm                                         | 303 kB  00:00:00     
    (7/7): libstdc++-devel-4.8.5-28.el7_5.1.x86_64.rpm                                   | 1.5 MB  00:00:01     
    ------------------------------------------------------------------------------------------------------------
    Total                                                                        10 MB/s |  31 MB  00:00:03     
    Running transaction check
    Running transaction test
    Transaction test succeeded
    Running transaction
      Updating   : libgcc-4.8.5-28.el7_5.1.x86_64                                                          1/12 
      Updating   : libstdc++-4.8.5-28.el7_5.1.x86_64                                                       2/12 
      Installing : libstdc++-devel-4.8.5-28.el7_5.1.x86_64                                                 3/12 
      Updating   : cpp-4.8.5-28.el7_5.1.x86_64                                                                                                                                                     4/12 
      Updating   : libgomp-4.8.5-28.el7_5.1.x86_64                                                                                                                                                 5/12 
      Updating   : gcc-4.8.5-28.el7_5.1.x86_64                                                                                                                                                     6/12 
      Installing : gcc-c++-4.8.5-28.el7_5.1.x86_64                                                                                                                                                 7/12 
      Cleanup    : gcc-4.8.5-16.el7.x86_64                                                                                                                                                         8/12 
      Cleanup    : libstdc++-4.8.5-16.el7.x86_64                                                                                                                                                   9/12 
      Cleanup    : libgcc-4.8.5-16.el7.x86_64                                                                                                                                                     10/12 
      Cleanup    : cpp-4.8.5-16.el7.x86_64                                                                                                                                                        11/12 
      Cleanup    : libgomp-4.8.5-16.el7.x86_64                                                                                                                                                    12/12 
      Verifying  : libgomp-4.8.5-28.el7_5.1.x86_64                                                                                                                                                 1/12 
      Verifying  : libgcc-4.8.5-28.el7_5.1.x86_64                                                                                                                                                  2/12 
      Verifying  : libstdc++-devel-4.8.5-28.el7_5.1.x86_64                                                                                                                                         3/12 
      Verifying  : gcc-4.8.5-28.el7_5.1.x86_64                                                                                                                                                     4/12 
      Verifying  : cpp-4.8.5-28.el7_5.1.x86_64                                                                                                                                                     5/12 
      Verifying  : libstdc++-4.8.5-28.el7_5.1.x86_64                                                                                                                                               6/12 
      Verifying  : gcc-c++-4.8.5-28.el7_5.1.x86_64                                                                                                                                                 7/12 
      Verifying  : libgcc-4.8.5-16.el7.x86_64                                                                                                                                                      8/12 
      Verifying  : libstdc++-4.8.5-16.el7.x86_64                                                                                                                                                   9/12 
      Verifying  : libgomp-4.8.5-16.el7.x86_64                                                                                                                                                    10/12 
      Verifying  : cpp-4.8.5-16.el7.x86_64                                                                                                                                                        11/12 
      Verifying  : gcc-4.8.5-16.el7.x86_64                                                                                                                                                        12/12 


    Installed:
      gcc-c++.x86_64 0:4.8.5-28.el7_5.1                                                                                                                                                                 


    Dependency Installed:
      libstdc++-devel.x86_64 0:4.8.5-28.el7_5.1                                                                                                                                                         


    Dependency Updated:
      cpp.x86_64 0:4.8.5-28.el7_5.1       gcc.x86_64 0:4.8.5-28.el7_5.1       libgcc.x86_64 0:4.8.5-28.el7_5.1       libgomp.x86_64 0:4.8.5-28.el7_5.1       libstdc++.x86_64 0:4.8.5-28.el7_5.1      


    Complete!
<think>好的,用户的问题是在CentOS系统上安装g++编译器。我需要根据提供的引用内容来整理步骤。首先,我要确认用户使用的是CentOS版本,不过用户没有明确说明,但引用的资料提到CentOS7,所以可能以这个版本为主。 首先,引用[1]提到在CentOS7中,默认没有安装gcc和g++,可以通过yum安装。命令是yum -y install gcc gcc-c++,这里gcc-c++应该就是g++的包。引用[3]也验证了这一点,直接使用yum安装gcc和gcc-c++。安装完成后,用g++ -v检查是否成功。 然后,用户可能需要安装更新的版本。引用[2]和[4]提到了升级的方法。比如,引用[4]说可以使用devtoolset来安装更高版本的g++,例如devtoolset-8,安装后需要启用。这可能涉及到添加额外的仓库,比如centos-release-scl,然后安装devtoolset-8-gcc-c++。但用户可能只需要基础安装,所以需要分步骤说明。 此外,引用[5]提到可能遇到yum源的问题,需要更换国内源,但用户可能已经配置好了,所以可以放在注意事项里。 现在需要整理步骤:首先安装默认版本的g++,然后可选升级。安装步骤包括更新yum安装gcc-c++包,验证安装。对于升级,需要安装SCL仓库,安装devtoolset,然后启用。 还要注意权限问题,是否需要sudo,根据引用[1]提到如果是root用户可能需要sudo,但通常root不需要,所以可能需要提示用户根据实际情况添加sudo。 最后,生成相关问题,比如如何升级版本,如何验证安装,如何解决依赖问题等。</think>### 分步解答:在CentOS系统安装g++编译器 #### 一、基础安装(默认版本) 1. **更新yum仓库缓存** ```bash sudo yum update ``` 2. **安装g++编译器** ```bash sudo yum install -y gcc-c++ ``` - `gcc-c++` 是g++的软件包名称,安装时会自动处理依赖[^1][^3] 3. **验证安装结果** ```bash g++ --version ``` 输出示例: ``` g++ (GCC) 4.8.5 20150623... ``` #### 二、安装新版g++(可选,如g++8) 1. **安装Software Collections仓库** ```bash sudo yum install -y centos-release-scl ``` 2. **安装新版编译器套件** ```bash sudo yum install -y devtoolset-8-gcc-c++ ``` 3. **临时启用新版编译器** ```bash scl enable devtoolset-8 bash ``` 4. **永久启用新版编译器(需重启终端)** ```bash echo "source /opt/rh/devtoolset-8/enable" >> ~/.bashrc ``` #### 三、测试编译 1. 编写测试文件 `hello.cpp`: ```cpp #include <iostream> int main() { std::cout << "Hello, CentOS!" << std::endl; return 0; } ``` 2. 编译并运行: ```bash g++ hello.cpp -o hello ./hello ``` --- ### 常见问题解决 1. **出现 `sudo: apt-get:找不到命令`** CentOS系统使用 `yum` 而非 `apt-get`,所有安装命令需替换为 `yum`[^1] 2. **安装时提示依赖错误** 可尝试更换国内yum镜像源(如阿里云、网易163源)[^5] ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值