GCC:多次链接库会导致“多重定义”错误?

GCC:多次链接库会导致“多重定义”错误?

我有一个通过 Buildroot 生成的工具链,我试图用它静态编译一些东西,但构建失败并gcc显示有关“多重定义”的内容。现在看看有问题的命令行,gcc 是使用链接选项执行的,出现了两次,即gcc -lpthread -lpthread.

我在 Buildroot IRC 上提到过这一点,但有人告诉我,链接同一个库两次不会导致任何问题。这是真的吗?GCC 确实足够聪明吗?编译失败的原因可能是其他原因吗?

答案1

正如下面评论中所指出的,我的问题的答案是:,现在的链接器太聪明了,问题一定是别的。

相关内容