最佳答案
-rdynamic(或者链接器级别的 --export-dynamic)到底是做什么的? 它与 -fvisibility*标志或者 pragma和 __attribute__所定义的符号可见性有什么关系?
对于 --export-dynamic,Ld (1)提到:
如果你使用“ dlopen”来加载一个动态对象,这个对象需要引用 程序定义的符号,而不是其他动态符号 对象,那么你可能需要 在链接程序本身时使用此选项。 ..。
我不确定我是否完全理解。你能不能提供一个例子,不工作没有 -rdynamic,但与它呢?
编辑 :
我实际上尝试编译了几个虚拟库(单文件、多文件、各种 O 级别、一些函数间调用、一些隐藏符号、一些可见) ,有的使用了 -rdynamic,有的没有使用。到目前为止,我已经得到了 字节相同输出(当然是在保持所有其他标志不变的情况下) ,这非常令人困惑。