在Visual Studio中,我可以使用/INCLUDE (Force Symbol References)链接器选项从dll中导出特定的符号。GCC中有等价的选项吗?
我使用-fvisibility=hidden进行编译,因此默认情况下不会导出任何符号。
在Visual Studio中,我可以使用/INCLUDE (Force Symbol References)链接器选项从dll中导出特定的符号。GCC中有等价的选项吗?
我使用-fvisibility=hidden进行编译,因此默认情况下不会导出任何符号。
2条答案
按热度按时间t3irkdon1#
虽然符号可见性可能会起作用,但它并不是问题的答案。它不是一个链接器选项,需要修改源代码,这可能是不希望的。或多或少等效于导出Map,但它只适用于带有GNU链接器的GCC。GCC命令行选项将是
看a.map起来像是
更多信息,请访问http://www.akkadia.org/drepper/dsohowto.pdf
eeq64g8w2#
一种方法是使用
__attribute__
:这应该只会覆写这个函式的
-fvisibility=hidden
参数。您也可以这样做:这将导出整个类和其中包含的所有声明。