Android查看SO库的依赖

bash 复制代码
➜  bin pwd
/Users/xxx/Library/Android/sdk/ndk/21.1.6352462/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/bin
➜  bin ./aarch64-linux-android-readelf -d /Download/libxxx.so 
bash 复制代码
 0x0000000000000001 (NEEDED)             Shared library: [liblog.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc++_shared.so]
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so]
  • 静态链接。静态链接会将使用到的stl中代码,链接(拷贝)到so中;静态用.a为后缀
  • 动态链接。在链接时,并不会将stl代码拷贝到so中,而是将使用到的STL符号,保存在so的动态链接符号表中,在运行时绑定并调用这些STL中的符号(位于STL的so中)。动态通常用.so为后缀

参考
https://www.jianshu.com/p/11f5c722dce8
https://segmentfault.com/a/1190000041563287
https://zhuanlan.zhihu.com/p/377651202
https://www.cnblogs.com/52php/p/5681711.html

相关推荐
Winter_Sun灬33 分钟前
CentOS 7 编译安卓 arm64-v8a 版 OpenSSL 动态库(.so)
android·linux·centos
柯南二号34 分钟前
【大前端】【Android】用 Python 脚本模拟点击 Android APP —— 全面技术指南
android·前端·python
龚礼鹏35 分钟前
图像显示框架六——SurfaceFlinger的初始化以及任务调度(基于Android 15源码分析)
android
壮哥_icon41 分钟前
Android 使用 PackageInstaller 实现静默安装,并通过 BroadcastReceiver 自动重启应用
android·gitee·android-studio·android系统
ao_lang42 分钟前
MySQL的存储过程和触发器
android·数据库·mysql
WebCsDn_TDCode1 小时前
Android Studio使用教程
android·android studio
小蜜蜂嗡嗡1 小时前
Android studio配置忽略文件
android·ide·android studio
颜颜yan_1 小时前
DevUI自定义开发实践:从零开始构建自定义组件和插件
android·java·数据库
爬也要爬着前进1 小时前
k8s部署wordpress
android·容器·kubernetes
儿歌八万首1 小时前
Flutter 混合开发指南:项目打包与原生 Android/iOS 集成
android·flutter·ios