当前位置:   article > 正文

关于“没有可用软件包 devtoolset-9-gcc-c++”的解决办法_source /etc/profile 没有devtoolset-9/文件或目录

source /etc/profile 没有devtoolset-9/文件或目录

BUG:

事情发生的原因:

本想使用llama.cpp对模型量化,结果对包进行make的时候出现“stdatomic.h:没有那个文件或目录”的bug,搜索发现是gcc版本太低了,gcc -v发现版本是4.8.5。

于是按理说应该执行以下命令升级gcc

yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
source /etc/profile
  • 1
  • 2
  • 3
  • 4
  • 5

但是问题在于install centos-release-scl时显示我已经安装了最新的版本,但是安装devtoolset时显示没有“没有可用软件包 devtoolset-9-gcc-c++…”,yum search时一个版本也搜索不到,找遍了全网试过所有方法,比如换源,比如不输入yum -y,比如我也想不起来了,反正基本都用过了,当然这个问题的相关内容也比较少。


解决方案

都准备下原始包来手动编译了,不信邪。严重怀疑自己的的centos-release-scl存在问题,因为我scl -list查不到任何包。

后来发现根据这个文章:
介绍centos的软件仓储repos

看到了这样一段话:
执行命令#yum install centos-release-scl安装SCL的配置工具包,安装完成之后修改/etc/yum.repos.d/CentOS-SCLo-scl.repo, /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo文件,同样可以使用http://mirrors.tuna.tsinghua.edu.cn的镜像。

很有意思,本来想进入/etc/yum.repos.d来更改这两个repo文件,结果发现,我压根就没有!所以没有这两个文件,我又怎么可能搜索到东西呢?咱也不知道为什么显示的是centos-release-scl是最新版本,无需任何操作,但是又没有这两个repo。

于是最终解决方案:
1.查看你安装的scl

yum list installed|grep "scl"
  • 1

2.删除scl

yum remove centos-release-scl.noarch
yum remove centos-release-scl-rh.noarch
  • 1
  • 2

3.重新安装

yum install -y centos-release-scl centos-release-scl-rh
  • 1

4.按照正常步骤安装devtoolset即可

yum install -y scl-utils scl-utils-build
yum -y install devtoolset-9-gcc* # 或者下一行也行
#yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
echo "source /opt/rh/devtoolset-9/enable" >> /etc/profile
  • 1
  • 2
  • 3
  • 4
  • 5

至此,事情解决。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/236913
推荐阅读
相关标签
  

闽ICP备14008679号