Linux 平台下的共享动态库,一般都是通过选项“-fPIC”编译出来。有些应用程序需要链接多个共享库,此时如果在这些共享库中存在相同作用域范围的同名静态成员变量,那么当程序访问完静态成员变量结束析构时,由于内存的 double free 会导致程序 core dump;该问题是由于 Linux 编译器的缺陷造成的,本文就此问题进行深入分析,并指出可以通过新的编译选项“-fPIE”加以解决
写的很好
Linux 平台下的共享动态库,一般都是通过选项“-fPIC”编译出来。有些应用程序需要链接多个共享库,此时如果在这些共享库中存在相同作用域范围的同名静态成员变量,那么当程序访问完静态成员变量结束析构时,由于内存的 double free 会导致程序 core dump;该问题是由于 Linux 编译器的缺陷造成的,本文就此问题进行深入分析,并指出可以通过新的编译选项“-fPIE”加以解决
写的很好
上一篇:从源码看集合ArrayList
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M