gpt4 book ai didi

c - 关于 "gcc: unrecognized option ` -rdynamic'”的问题

转载 作者:太空宇宙 更新时间:2023-11-03 23:26:16 25 4
gpt4 key购买 nike

我在 Solaris 10 上使用 gcc 构建 make 程序,并得到以下信息:

gcc: unrecognized option `-rdynamic'

检查 rdynamic 后在 gcc 文档中,我得到以下解释:

-rdynamic
Pass the flag -export-dynamic to the ELF linker, on targets that support it. This instructs the linker to add all symbols, not only used ones, to the dynamic symbol table. This option is needed for some uses of dlopen or to allow obtaining backtraces from within a program.

我的问题是:

(1) 尽管gcc 打印出“gcc: unrecognized option -rdynamic”,但构建仍然成功。这是 gcc 的默认行为吗?

(2) 我在 Makefile 中将“-rdynamic”替换为“-export-dynamic”,构建成功。这种替代有任何副作用吗?

附言我的 gcc 信息:

bash-3.00# gcc -v
Reading specs from /usr/local/lib/gcc/i386-pc-solaris2.10/3.4.6/specs
Configured with: ../configure --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld --enable-shared --enable-languages=c,c++,f77
Thread model: posix
gcc version 3.4.6

最佳答案

您使用的是过时版本的 gcc,但您引用了最新的文档。 gcc-3.4.6 没有这样的链接器选项,请参阅 https://gcc.gnu.org/onlinedocs/gcc-3.4.6/gcc/Link-Options.html .

尝试在链接时使用 -Wl,--export-dynamic 选项。


I replace -rdynamic with -export-dynamic in Makefile, and the build is success. Is there any side-effect of this substitution.

这个选项没有记录,它可能什么都不做,你需要检查 strace 输出它传递给链接器的命令行选项。

关于c - 关于 "gcc: unrecognized option ` -rdynamic'”的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26884574/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com