• 主页
  • 系统维护与使用
  • 应用程序开发
  • 内核源代码
  • 驱动程序开发
  • CPU和硬件区
  • UNIX文化
  • Solaris
  • Power Linux

请教关于调试信息的问题

asdln 2020-10-30 09:29:17
请教个问题,linux下如果加了-g选项编译,调试信息是放到so库里了吗,如果是,这种包含调试信息的so相比不包含调试信息的版本,在运行效率上有区别吗
...全文
7334 点赞 收藏 3
写回复
3 条回复
RedWolf1999 2020年11月02日
加了-g,你编的是so库调试信息就在so里,是可执行就在可执行里。 -g主要是增加了调试信息与效率可能无关。效率一般是-O1 -O2 -O3来优化。 第二个问题,编译的时候要编release版本。
回复 点赞
asdln 2020年11月02日
我编译proj7.1的时候,makefile里的CFLAGS和CXXFLAGS里,都把-g去掉了,但编译的时候我看命令行的提示,还是有-g。咋回事
回复 点赞
glen30 2020年10月31日
加了-g表示添加调试信息,这个调试信息是放在生成的二进制文件里面的,比如 gcc 1.c -g -o a.out,这里的调试信息就放在a.out里面
加了-g的一般是调试版本,至少编译出来的软件大小比没有加-g的要大,因此加载速度也会慢些,正式发布的时候建议不要加-g
回复 点赞
发动态
发帖子
Linux/Unix社区
创建于2007-08-27

7062

社区成员

7.3w+

社区内容

Linux/Unix社区 应用程序开发区
社区公告
暂无公告