cmake生成so文件体积过大问题

最近因为项目中有部分接口方法需要写在so文件中,那就简单开搞,AndroidStudio使用cmake打包生成so文件很简单,主要是c++中实现方法不复杂,具体生成so流程不多说,网上很多demo。

虽然c++文件不过几十百来行,然而生成的so文件接近1M,这肯定是属于异常的,包体积无故增加好几M,必须优化一下。

网上查了下,很多都说在CMakeLists.txt文件中增加下面俩行:

set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -s")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -s")

结果肯定是无效的,不然也不会有这篇文章了 ^ - ^
使用Androidstudio打开so文件,发现有很多冗余的数据,接近上万行,因为网络上大家都建议使用c来写而不是c++,所以想着是不是调用了c++的方法库导致so文件增加的;

仔细观察发现自己使用了c++提供的md5相关算法头文件,所以导致引入文件很多,打包体积很大;
转变去掉相关引入就ok;

去掉后重新打包体积只有小几十kb;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。