centos 7 关于引用stdatomic.h的问题

问题:/tmp/tmp4usxmdso/main.c:6:23: fatal error: stdatomic.h: No such file or directory

#include <stdatomic.h>

解决步骤:

1.这个错误是因为缺少C编译器的标准原子操作头文件 stdatomic.h。在Linux系统中,我们需要安装开发工具包来解决这个问题。

可以运行以下命令来安装必要的开发工具:

sudo yum groupinstall "Development Tools" -y

2.看起来系统的yum源有问题,让我们先修复yum源,然后再安装开发工具:

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo && yum clean all && yum makecache

3.看来yum源还是有问题。让我们尝试直接安装gcc和相关开发工具:

yum install -y gcc gcc-c++ kernel-devel make --disablerepo=centos-sclo-rh

4.让我们禁用所有有问题的repo后再试:

yum install -y gcc gcc-c++ kernel-devel make --disablerepo=centos-sclo-rh --disablerepo=docker-ce-stable

5.看起来gcc和开发工具已经安装好了。现在让我们检查一下 stdatomic.h 文件:

find /usr -name stdatomic.h

6.看来系统中确实缺少 stdatomic.h。这个问题在CentOS 7上比较常见,因为它使用的gcc版本较旧。我们有两个解决方案:

  • 安装更新版本的gcc:

    yum install -y centos-release-scl && yum install -y devtoolset-7

7.看来yum源的问题还是没有完全解决。让我们尝试第二个解决方案:

  • 使用conda环境安装gcc:

    conda install -y gcc_linux-64 gxx_linux-64

相关推荐
❀͜͡傀儡师20 分钟前
使用docker搭建FastDFS文件服务
运维·docker·容器
fenglei20203 小时前
DevOps工具链概述
linux·服务器·网络·devops
zjkzjk77113 小时前
dynamic_cast和static_cast和const_cast
linux·运维·服务器
洛音竹3 小时前
ubuntu下一键编译
linux·运维·ubuntu
JJustRight3 小时前
搭建Kafka集群(CentOS Stream 9)
zookeeper·kafka·centos·kafka集群
网络安全Jack3 小时前
网络安全用centos干嘛 网络安全需要学linux吗
linux·web安全·centos
不懂网络的坤坤4 小时前
Linux性能优化实战:从CPU到磁盘I/O
linux·网络
kk努力学编程4 小时前
Linux基础14-C语言篇之变量与标识符【入门级】
java·linux·c语言
小小AK5 小时前
数据集成实例分享:金蝶云星空对接旺店通实现库存管理自动化
java·运维·自动化