MAC下编译动态链接库函数的可见性

编译的时候加上 -fvisibility=hidden,可以隐藏一般函数的可见性,如果要使得函数可见,则要加上__attribute__((visibility(“default”)))

代码如下:

 

保存成a.c,然后用命令行编译:

gcc -shared -fPIC a.c -fvisibility=hidden

此时生成a.out,然后用nm查看,可以看到函数a前面是小t,说明是隐藏的,函数b前面是大T,说明是可见的

发表评论