社区
工具平台和程序库
帖子详情
gcc 优化选项问题
誰伴我闖荡
2011-01-17 10:35:56
近日在做一个项目,
结果发现如果用默认的编译优化选项,运行的时候就是正确的,
然后使用-O2 -Os了,编译没问题,而且编译的包也会小一些,但是就是运行的时候运行不了。。
现在需要解决这个问题,
由于一直都没这方面的经验,不知道从何入手,
想请问下,这种问题如何解决?
谢谢了
...全文
209
5
打赏
收藏
gcc 优化选项问题
近日在做一个项目, 结果发现如果用默认的编译优化选项,运行的时候就是正确的, 然后使用-O2 -Os了,编译没问题,而且编译的包也会小一些,但是就是运行的时候运行不了。。 现在需要解决这个问题, 由于一直都没这方面的经验,不知道从何入手, 想请问下,这种问题如何解决? 谢谢了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xunxun
2011-01-17
打赏
举报
回复
gcc如果使用多个类似作用的开关时,以最后一个开关为准,-O2 -Os 起作用的是-Os。
lz的问题应该是不加优化没有问题,加优化就有问题,检查下初始化、越界等。
誰伴我闖荡
2011-01-17
打赏
举报
回复
哦,那怎么解决运行不了这个的问题
huang_gen
2011-01-17
打赏
举报
回复
-Os相当于-O2.5。是使用了所有-O2的优化选项,但又不缩减代码尺寸的方法和O2冲突,导致生成的代码紊乱
claio
2011-01-17
打赏
举报
回复
运行不了提示什么嘛。。。
而且-Os 基本上就是 -O2,只是不缩减代码尺寸,没见过-Os -O2连着用的
linux 编译
优化
选项
,关于
GCC
优化
选项
打开后编译出错的
问题
当尝试使用
GCC
的-O2
优化
选项
编译简单的C代码时,出现了多处定义错误和符号索引无效的
问题
。错误涉及_fini、__data_start和__dso_handle等多个符号。这可能是因为编译命令中的-O2语法错误,应改为-g2
选项
进行调试编译。错误还涉及到链接器ld和调试信息,可能需要检查系统库和编译环境。
gcc
: O2编译
选项
可以掩盖的一种coredump情况
GCC
的-O2
优化
选项
可能导致编译器
优化
掉某些代码,例如析构函数中对象成员的赋值,认为它们无用。这可能会掩盖潜在的错误,使得在不使用-O2时可能出现的coredump
问题
在
优化
后消失。
避坑指南:
GCC
优化
选项
pragma push/pop的版本兼容性
问题
与替代方案
本文深入剖析
GCC
#pragma
GCC
optimize push/pop在4.6以下版本(尤其是4.1–4.7)中的静默失效、状态泄漏等兼容性
问题
;提出基于__GNUC__, __GNUC_MINOR__的版本检测与条件编译方案;给出函数级__attribute__((optimize))替代方法;并覆盖Android NDK中NDK-
GCC
映射、防御性编码及CI多版本验证实践。
gcc
-O0 -O1 -O2 -O3 四级
优化
选项
及每级分别做什么
优化
本文介绍了
GCC
编译
优化
,其提供近百种
优化
选项
,为降低使用难度,又有O0 - O3及Os几种
优化
级别。详细阐述了各
优化
级别的特点、打开的
选项
,还总结了各
优化
级别的效果。同时指出
优化
代码可能带来调试
问题
和内存操作顺序改变的
问题
,并给出应对建议。
GCC
编译器介绍及常见的编译
选项
使用方法
本文介绍了
GCC
编译C语言程序的基本用法,包括安装
GCC
、编写C语言源代码、使用
GCC
编译程序及运行可执行文件。还阐述了
GCC
常用编译
选项
,如指定库名、库搜索路径、include目录等,同时说明了处理链接和包含
问题
的方法,以及
优化
、调试、警告等
选项
。
工具平台和程序库
24,851
社区成员
27,330
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章