加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – rdynamic gcc选项的影响/缺点

发布时间:2020-12-16 05:50:36 所属栏目:百科 来源:网络整理
导读:我一直在一个Big C项目中工作,这个项目有一个巨大的大小,大约300 MB,超过800个文件.当二进制崩溃时,我想要得到Call Stack,所以我已经捕获了Signal,并将call stack从backtrace_symbols写入一个文件.但是要从backtrace_symbols获取符号名称,我已经使用链接器标
我一直在一个Big C项目中工作,这个项目有一个巨大的大小,大约300 MB,超过800个文件.当二进制崩溃时,我想要得到Call Stack,所以我已经捕获了Signal,并将call stack从backtrace_symbols写入一个文件.但是要从backtrace_symbols获取符号名称,我已经使用链接器标记’-rdynamic’进行编译.我想知道,使用’-ynynamic’会影响任何问题?

我知道它影响性能,
Will adding the -rdynamic linker option to gcc/g++ impact performance?

但是呢
影响性能有多大?

是否暴露了我的源代码? [我知道不会,我只是想确定]

它是否影响总运行时性能或启动时间?

“rdynamic”的缺点是什么?

解决方法

问:但是它是否影响性能呢?

A:我已经在更大的项目上使用了它,没有任何退化.

问:是否暴露了我的源代码?

A:不,它只是暴露了函数名.

问:是否影响总运行时性能或启动时间?

A:根据我的经验,没有.大多数功能已经导出.通常这增加了静态功能.

问:“动态”的缺点是什么?

A:rdynamic可以与dlopen()一起使用,为我的项目中必须的可执行文件提供一个共享/全局符号表(dynamic_cast<>将跨越SO边界).缺点是SO之间的功能名称冲突.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读