gcc的符号可见性-fvisibility的说明
gcc使用-fvisibility=hidden编译选项,将库的所有符号默认设置为对外不可见,编译出的二进制就不会导出可供外部链接的符号。然后再结合__attribute__ ((visibility ("default")))属性,在代码中明确指定可以暴露给外部的API,就可以显示的控制库的对外API的可见性。
参考:
gcc使用-fvisibility=hidden编译选项,将库的所有符号默认设置为对外不可见,编译出的二进制就不会导出可供外部链接的符号。然后再结合__attribute__ ((visibility ("default")))属性,在代码中明确指定可以暴露给外部的API,就可以显示的控制库的对外API的可见性。
参考: