国产平台申威飞腾不同编译选项启动挂死问题解决


风晓
风晓 2024-01-05 10:35:30 51515 赞同 0 反对 0
分类: 资源
由于不同国产平台对GCC编译器适配的不太好,相同一段代码编译运行,使用不同的编译优化选项运行导致有启动不了、挂死等问题;

尤其是针对一些大型的系统代码,需要对转发代码做-O2优化,但是对于调试版本需要尽量保留调试信息做-g -O0编译,同一套代码的不同部分做两种不同的编译优化,需要在不同目录下的Makefile中进行过滤替换编译选项,方法如下:

> TARGET :=libcli.a
> ifeq ($(ARCH),SW)
> override CFLAGS:=$(filter-out -O2,$CFLAGS))
> endif

上面是过滤掉-O2编译优化选项,不同的Makefile下override 语句在target上下的位置不同,会有不同的编译效果,有时候会出现报错,需要调整位置;

> TARGET :=libcli.a
> ifeq ($(ARCH),SW)
> CFLAGS += -O1
> override CFLAGS:=$(filter-out -O2,$CFLAGS))
> endif

上面是过滤掉-O2编译优化选项,增加-O1选项,CFLAGS += -O1在override 的上下位置导致能否生效的情况也不用,和Makefie的展开方式有关,需要注意。

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

评价 0 条
风晓L1
粉丝 1 资源 2038 + 关注 私信
最近热门资源
银河麒麟桌面操作系统备份用户数据  125
统信桌面专业版【全盘安装UOS系统】介绍  119
银河麒麟桌面操作系统安装佳能打印机驱动方法  110
银河麒麟桌面操作系统 V10-SP1用户密码修改  105
最近下载排行榜
银河麒麟桌面操作系统备份用户数据 0
统信桌面专业版【全盘安装UOS系统】介绍 0
银河麒麟桌面操作系统安装佳能打印机驱动方法 0
银河麒麟桌面操作系统 V10-SP1用户密码修改 0
作者收入月榜
1

prtyaa 收益393.62元

2

zlj141319 收益218元

3

1843880570 收益214.2元

4

IT-feng 收益209.03元

5

风晓 收益208.24元

6

777 收益172.71元

7

Fhawking 收益106.6元

8

信创来了 收益105.84元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.5元

请使用微信扫码

加入交流群

请使用微信扫一扫!