Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 什么是叮当声';s相当于-rdynamic gcc标志?_C++_Macos_Clang - Fatal编程技术网

C++ 什么是叮当声';s相当于-rdynamic gcc标志?

C++ 什么是叮当声';s相当于-rdynamic gcc标志?,c++,macos,clang,C++,Macos,Clang,我找不到任何类似的选项可以将所有函数名包含到最终版本的二进制文件中。或者默认情况下,clang会这么做吗?我的谷歌富告诉我,你可以用 -Wl,--export-dynamic 这是GCC在传递链接器时通常传递给链接器的内容-rdynamic。我会先在没有任何东西的情况下尝试它,看看是否有必要使用该标志。至少clang 3.3似乎支持-rdynamic,尽管clang--help和手册页都不支持它。(如果您在OSX上,则不需要-rdynamic) gcc-rdynamic表示“-rdynamic

我找不到任何类似的选项可以将所有函数名包含到最终版本的二进制文件中。或者默认情况下,
clang
会这么做吗?

我的谷歌富告诉我,你可以用

-Wl,--export-dynamic

这是GCC在传递链接器时通常传递给链接器的内容
-rdynamic
。我会先在没有任何东西的情况下尝试它,看看是否有必要使用该标志。

至少clang 3.3似乎支持
-rdynamic
,尽管
clang--help
和手册页都不支持它。(如果您在OSX上,则不需要-rdynamic)

gcc
-rdynamic
表示“-rdynamic 在支持该标志的目标上,将其传递到ELF链接器


因此,clang也应该能够对
-Wl,-export-dynamic
做同样的事情。这个问题的正确答案是
-Wl,-export-u-dynamic
not
-Wl,--export-dynamic

-Wl,--export dynamic
只有在ELF平台上使用GNU链接器时才正确

这个问题是关于OSX的

来源:


我的错,应该加上我特别指的是OS X。为什么不需要它?默认情况下,OSXClang 5不支持
-export dynamic
,但支持
-rddynamic
。这应该是公认的答案。(在Catalina上使用AppleClang进行测试)
...
else if ( strcmp(arg, "-export_dynamic") == 0 ) {
    fExportDynamic = true;
}
...