查看库是否是动态库

如果是动态库则会有 Mach-O dynamically linked shared library标记

file xxxx.a

file xxxx.framework/xxxx

lipo

查看库支持多少 CPU 架构

lipo -i xxxx.framework/xxxx

Architectures in the fat file: xxxx are: armv7 armv7s arm64

lipo -create xxx.a xxx.a -output xxx.a合成一个库的两个不同CPU架构的库文件为一个

lipo xxx.a -thin armv7 -output armv7.a拆分提取一个库的CPU架构,从库中提取armv7架构保存

lipo xxx.a -thin arm64 -output arm64.a从库中提取arm64架构保存

lipo -detailed_info xxx.a查看可执行文件文件头详细信息

ar

ar -x xxx.a获取链接前.o文件

libtool

libtool -static -o ../xxx.a *.o链接合并.o文件为.a文件

otool

otool -L libswiftCore.dylib查看当前app或库所使用的iOS系统的动态库

查看库包含的架构信息 otool -o /framework路径/xxx.framework/xxx

反编译: otool -tV xxxx.framework/xxxx

反编译可以说是个逆向常用的比较黑的操作,注意:此命令将输出所有汇编代码,会比较长。

检查framework是否支持bitcodeotool -l xxxx | grep __LLVM | wc -l打印数值大于0则支持bitcode

nm

nm是names的缩写, nm命令主要是用来列出某些文件中的符号(函数和变量等)。因为比较长,也不列出了。

创建动态库+BITCODE

lipo otool 动态库、静态库的生成相关推荐

  1. linux库引入之动态库静态库(生成和使用)

    库: 库是一种可执行代码的二进制形式,可以被操作系统载入内存执行.就是将源代码转化为二进制格式的源代码,相当于进行了加密,别人可以使用库,但是看不到库中的内容. 如何使用 用户需要同时具有头文件和库. ...

  2. VS2015编译32位Opencv310(动态库+静态库,文末有下载链接)

    VS2015编译32位Opencv310(动态库+静态库 编译过得,可以直接用的: http://download.csdn.net/download/longzaihuaxia/9802510 之前 ...

  3. c语言makecode头文件,cmake 添加头文件目录,链接动态、静态库

    罗列一下cmake常用的命令. CMake支持大写.小写.混合大小写的命令. 1. 添加头文件目录INCLUDE_DIRECTORIES 语法: include_directories([AFTER| ...

  4. linux系统应用学习(三)--- 动态库静态库

    动态库静态库 库文件:一般指第三方提供的可调用的库函数文件,库文件封存的是函数体,即.c文件里面的内容. 动态库      静态库 Windows下:        xx.dll            ...

  5. 硬核拆解动态库静态库

    [Github pages] 动态库与静态库是编程中十分常见的玩意儿,但是如此常见的东西在我真正用心去了解梳理过一遍之后才发现原来这里面有这么多的门道.本文就介绍一波 Linux 平台下,特指 GCC ...

  6. linux库--静态库、动态库

    文章目录 一.分文件编程思想 二.动态库静态库 1.概念介绍 2.静态库的制作和使用 3.动态库的制作和使用 一.分文件编程思想 好处: 分模块的编程思想 例如: 网络 a 超声波b 电机c a.功能 ...

  7. lipo 制作通用版本 静态库

    2019独角兽企业重金招聘Python工程师标准>>> 利用 lipo 制作通用版本 静态库 由于静态库在device和simulator上要选择不同的版本,因此在实际使用的时候切换 ...

  8. CMake 添加头文件目录,链接动态、静态库(添加子文件夹)

    CMake支持大写.小写.混合大小写的命令. 当编译一个需要第三方库的项目时,需要知道: 去哪找头文件(.h),-I(GCC) INCLUDE_DIRECTORIES() 去哪找库文件(.so/.dl ...

  9. cmake中添加引用动态链接_CMake 添加头文件目录,链接动态、静态库(添加子文件夹)...

    CMake支持大写.小写.混合大小写的命令. 当编译一个需要第三方库的项目时,需要知道: 去哪找头文件(.h),-I(GCC) INCLUDE_DIRECTORIES() 去哪找库文件(.so/.dl ...

最新文章

  1. 脚本命令远程访问计算机,在远程电脑上执行任意命令 (利用 Autohotkey ahk http 服务器)...
  2. python如何输出两行_python-如何串联在两行上指定的标识符?
  3. Redis 是并发安全的吗?你确定?
  4. 混合云计算应用中小企业市场前景看好
  5. Google Java编程风格指南中文版
  6. 再给大家发 200 个红包!
  7. oracle连接数据的oci和thin的区别
  8. 『科学计算』科学绘图库matplotlib练习
  9. Python函数详解:函数定义、调用,lambda函数,高阶函数map,filter,reduce,函数式编程,模块化设计、代码复用、函数递归、enumerate()
  10. Hihocoder 1142 三分
  11. 消息系统Kafka介绍
  12. 基于Spring Boot的简易版新闻管理系统
  13. 我的CSDN账号被偷了
  14. windows控制台cmd乱码的解决办法
  15. java 流媒体服务器搭建_搭建流媒体服务器(1)
  16. 李开复写给女孩子们的
  17. Linux使用zip打包文件
  18. 2021年研究生入学考试总结和复试冲刺复习计划
  19. wps手机版ppt动画效果_你不知道的WPS|仅这2个制作PPT的动画技能,就足够让你的PPT逼格瞬间提升...
  20. 2017.10.23 模拟考试 (题目来自:学大伟业)

热门文章

  1. 全国计算机技术与软件专业技术考试----(高级资格/高级工程师)各资格证详细介绍
  2. 半小时实现Java手撸Http协议,爽!!(附完整源码,建议收藏)
  3. armlinux 搭建nginx + rtmp服务器
  4. 普元 AppServer 部署时页面提示部署失败,后台报错:Unable to load class org.apache.cxf.ws.policy.AssertionBuilder
  5. 爱好数学的国王 C++
  6. tcp协议一定要有服务器吗,复习TCP协议——看这篇就够了
  7. windows中bat脚本编写
  8. 阿里云购买域名实名认证及网站备案
  9. strrchr()函数
  10. Md5工具包加密之MD5Util