error: ‘__ATOMIC_RELAXED’ undeclared (first use in this function)


风晓
风晓 2024-01-05 10:34:54 59814 赞同 0 反对 0
分类: 资源
编译 dpdk-18.11.11时,有如下报错信息:

error: ‘__ATOMIC_RELAXED’ undeclared (first use in this function)
error: ‘__ATOMIC_ACQUIRE’ undeclared (first use in this function)
error: ‘__ATOMIC_RELAXED’ undeclared (first use in this function)
error: ‘__ATOMIC_ACQUIRE’ undeclared (first use in this function)

分析解决
头文件的问题
根据过去的经验,未声明的符号这个错误很大概率是头文件的问题。首先需要确定的是编译的源码中是否有相关的符号声明。

使用上述符号在dpdk-18.11.11 的源码里面搜索,只发现很多使用的地方,没有发现声明。

这意味着上面找不到的符号不是 dpdk 内部定义的符号,那么这些符号可能是 dpdk 依赖的外部头文件。

在网上搜索
搜索了下,发现如下链接中有相同的问题案例:

__ATOMIC_RELAXED undeclared

发现这个问题可能是 gcc 版本过低导致的。网页中的讨论中有下面这一句:

The atomic builtins referenced in atomic.nim are only available with GCC 4.7+

我检查自己编译环境下Centos6.5的 gcc 版本,发现使用的 gcc 为 4.4.7 版本。

这之后我在另外一个Centos7编译环境上重新编译,编译前确认 gcc 的版本高于 4.7,编译成功。

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
风晓L1
粉丝 1 资源 2038 + 关注 私信
最近热门资源
分享如何统信UOS系统在屏蔽mysql显性的用户名称以及密码  614
分享免费开源高速下载器  577
分享如何在银河麒麟高级服务器操作系统V10SP3中需要启用内核审计功能。  572
通过shell脚本在统信UOS/麒麟系统中安装nginx  504
分享如何查看网卡中断的数量  422
分享查询网卡所在PCI插槽链路能力及当前链路状态  420
麒麟系统进行内存清理  413
统信UOS常见问题小总结  411
麒麟系统资源下载合集(适配各类cpu)  409
winrar绿色无广告版分享  393
最近下载排行榜
分享如何统信UOS系统在屏蔽mysql显性的用户名称以及密码 0
分享免费开源高速下载器 0
分享如何在银河麒麟高级服务器操作系统V10SP3中需要启用内核审计功能。 0
通过shell脚本在统信UOS/麒麟系统中安装nginx 0
分享如何查看网卡中断的数量 0
分享查询网卡所在PCI插槽链路能力及当前链路状态 0
麒麟系统进行内存清理 0
统信UOS常见问题小总结 0
麒麟系统资源下载合集(适配各类cpu) 0
winrar绿色无广告版分享 0
作者收入月榜
1

prtyaa 收益395.97元

2

zlj141319 收益228.47元

3

IT-feng 收益214.92元

4

1843880570 收益214.2元

5

风晓 收益208.24元

6

777 收益173.02元

7

哆啦漫漫喵 收益131.6元

8

Fhawking 收益106.6元

9

信创来了 收益105.97元

10

克里斯蒂亚诺诺 收益91.08元

请使用微信扫码

加入交流群

请使用微信扫一扫!