sho*_*osh 8 c c++ linker gcc ld
我有一个可执行文件链接到一个包含大量功能的大型.a存档.可执行文件只使用此存档中的一小部分函数,但由于某种原因,它从中提取所有内容并最终变得非常大.
我怀疑可执行文件正在使用的某些功能以某种方式引用它不应该引用的东西,并导致其他所有内容被拉出.
是否有可能让gcc告诉我什么引用导致在可执行文件中添加特定符号?为什么会发生这种情况?
我尝试过使用--gc-sections
没有效果.
我已经尝试使用--version-script
可执行本地的所有符号而没有效果
我不感兴趣-ffunction-sections
,-fdata-sections
因为它是我想丢弃的目标文件,而不是函数.
其他答案提到-why_live
但似乎只为darwin实现,我在linux x86_64
归档时间: |
|
查看次数: |
366 次 |
最近记录: |