码迷,mamicode.com
首页 > 系统相关 > 详细

分析MAC*.a库文件信息

时间:2016-04-17 09:08:01      阅读:288      评论:0      收藏:0      [点我收藏+]

标签:分析 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://zhuxianzhong.blog.51cto.com/157061/1764666

分析MAC*.a库文件信息

标签:分析 mac *.a 库 信息

原文地址:http://zhuxianzhong.blog.51cto.com/157061/1764666

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!