gpt4 book ai didi

linker - 有没有办法确保 clang 链接未引用的库符号

转载 作者:行者123 更新时间:2023-12-05 03:12:42 26 4
gpt4 key购买 nike

我有一个链接到静态库的可执行文件。该库公开了一个符号 create_widget()。这个符号没有被 clang 链接到可执行文件中,因为它没有被可执行文件引用。

可执行文件链接到另一个库,该库在运行时可以引用可执行文件公开的任何符号。我需要让这个库看到 create_widget()。

有什么好的方法可以解决吗?如果没有,我将与所有需要它的可执行文件共享 create_widget() 的源代码,而不是将其捆绑在一个库中。

最佳答案

有两种方法可以做到:-

1) 显式链接导出create_widget()目标文件,而不是比从图书馆。这样它导出的任何符号都将被链接它们是否被引用。

2) 使用选项--whole-archive -lwidget --no-whole-archive 链接静态库(比如说它是libwidget.a)。这样,libwidget 中的每个目标文件都将被链接,无论它是否包含任何是否引用符号。

关于linker - 有没有办法确保 clang 链接未引用的库符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32833912/

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