分析MAC*.a库文件信息
一、起因
在前面的文章中,我尝试在MAC终端上编译构建了可直接用于COCOS2D-X C++开发的Lean Cloud库。于是,接下来制作一个基本的例子去使用这个库中功能。出于类似于windows vc开发时候的好奇吧,我想先瞅瞅(使用mac下的工具)这个.a文件中包含/输出哪些内容。于是,在网络上搜索找到几个基本工具。
二、分析工具
目前我使用的工具有MAC终端命令行工具(系统本身提供,但是需要安装xcode,我的是version 7.2):
ar
nm
otool
file
lipo
还有专业的更强大的mac 反编译工具Hopper Disassembler 。这个暂时不使用了,我目前专门搞破解分析的,暂时不必要安装这个工具。但是,http://www.cnblogs.com/ziyouchutuwenwu/archive/2013/03/16/2963824.html处的几个小小截图已经充分显示了这个工具的强大功能。类似于windows下的那几个东西......我想,如果想研究mac下的汇编语言开发,这个工具肯定是必备的工具之一了。
三、分析我的库文件libavoscloud.a
1. ar -t *.a
使用命令是:ar -t libavoscloud.a
2. nm libavoscloud.a
输出内容非常复杂,部分截图如下:
这种信息非常丰富,肯定是前面的Hopper Disassembler这样的工具所要包含的功能之一。
3.otool libavoscloud.a -L
输出如下图所示结果:
与上面的ar -t基本是一致的。但是,这个otool还有更细致丰富的功能,在此不赘述,有举趣的朋友可以参考文后参考文献。
4.lipo -detailed_info libavoscloud.a
输出如下图所示结果:
四、参考资料
http://blog.sina.com.cn/s/blog_408252050101g6lz.html
http://blog.csdn.net/kepoon/article/details/21516977
http://blog.csdn.net/x32sky/article/details/45099979
http://www.myexception.cn/operating-system/1273793.html
http://www.cnblogs.com/ziyouchutuwenwu/archive/2013/03/16/2963824.html
分析MAC*.a库文件信息相关推荐
- Oracle 查询库文件信息
--1.查看Oracle数据库中数据文件信息的命令方法 select b.file_name 物理文件名, b.tablespace_name 表空间, b.bytes/1024/1024 大小M, ...
- qt库文件添加到环境变量linux,QT获得所有系统环境变量(包括Linux和MAC的信息)...
系统环境变量还是挺重要的,除了QStandardPaths(感觉都是文档类型的变量,QT4使用QDesktopServices),更有QProcessEnvironment(都是真正的系统变量): Q ...
- Android so库文件的区节section修复代码分析
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/78818917 一.Android so库文件的节表secion修复方案整理 1. ...
- linux 环境变量文件_应急响应系列之Linux库文件劫持技术分析,有点硬核哟
0×01 菜逼阶段 Linux库文件劫持这种案例在今年的9月份遇到过相应的案例,当时的情况是有台服务器不断向个可疑IP发包,尝试建立连接,后续使用杀软杀出木马,重启后该服务器还是不断的发包,使用net ...
- 【Android 逆向】arm 汇编 ( 使用 IDA 解析 arm 架构的动态库文件 | 分析 malloc 函数的 arm 汇编语言 )
文章目录 一.分析 malloc 函数的 arm 汇编语言 一.分析 malloc 函数的 arm 汇编语言 在上一篇博客 [Android 逆向]arm 汇编 ( 使用 IDA 解析 arm 架构的 ...
- C++:MAC安装Boost库文件并且使用CLion开发
boost的filestem库 C++在17版本的标准库中引入了一个filesystem库,用来处理文件路径,以及文件访问.很多编译器对filesystem库的支持还不是很好.为了解决这个问题,可以临 ...
- STM32固件库文件分析
STM32固件库文件分析 1.汇编编写的启动文件 startup/stm32f10x.hd.s:设置堆栈指针,设置pc指针,初始化中断向量,配置系统时钟,对用c库函数_main最后去c语言世界里. 2 ...
- ModuleNotFoundError: No module named 'skimage'报错信息的解决方法及如何使用国内镜像安装库文件
首先,之所以会出现ModuleNotFoundError这一系列的报错信息,是由于缺少指定的库文件.正如标题中所涉及到的这个错误,正是由于缺少skimage(Scikit-Image,一个处理数字图像 ...
- clamav的病毒库文件的文件头的信息说明(clamav版本号等)
Author : Samson Date : 01/04/2022 在开源病毒检测工具clamav中,是通过对病毒库中的病毒特征值来进行对比的,病毒库文件存放于/var/lib/clamav目录下,主 ...
最新文章
- 不说12306你会Die啊?当然不会,但会憋死
- 【Android 逆向】Android 进程注入工具开发 ( 注入代码分析 | 调试进程 ATTACH 附着目标进程 | 读取目标函数寄存器值并存档 )
- MAC 升级到10.10(OS X Yosemite)下apache+php的配置问题
- 从零开始入门 K8s | Kata Containers 创始人带你入门安全容器技术
- php两个数组去掉相同的,php如何删除两个数组中相同的数据
- python发送文件给微信好友_Python定时自动给微信好友发送天气预报
- nuc972的ramfs的配置yaffs2,ubi文件系统
- mysql核心参数_MySQL技术体系之核心参数
- ORA-03113: 通信通道的文件结尾 进程 ID: 764 会话 ID: 125 序列号: 5
- 实现MySQL的Replication
- secureCRT 7.3.6 winxp版本
- 单片机4x4矩阵键盘c语言,MSP430单片机控制LED数码管显示4X4矩阵键盘键值C语言程序...
- origin柱状图同时有两组数和两组数差值_教程 | Origin用矩阵绘制多层曲面映射图...
- 《英语语法新思维 基础版1》读书笔记(三)
- 云服务器外网访问MySql全程实录
- 2019.07.一年级暑假——自动随机生成100以内加减法算术题的python实现
- 【ICML 2020联邦学习论文解读】SCAFFOLD: Stochastic Controlled Averaging for Federated Learning
- python卷积神经网络人体图像识别
- lammps胶体输出的日志文件
- Python项目实例——用代理IP爬取1688商品