gcc使用-fvisibility=hidden编译选项,将库的所有符号默认设置为对外不可见,编译出的二进制就不会导出可供外部链接的符号。然后再结合__attribute__ ((visibility ("default")))属性,在代码中明确指定可以暴露给外部的API,就可以显示的控制库的对外API的可见性。
参考:
【转】C/C++符号隐藏与依赖管理:库的符号隐藏
GCC的符号可见性 -fvisibility=hidden
gcc 的visibility 使用
在 CMAKE 中设置隐藏所有方法(不显示他们的符号)
标签:__,gcc,fvisibility,符号,可见,hidden
来源: https://www.cnblogs.com/nuoforever/p/16096160.html