`

查看静态链接库内容

 
阅读更多

iOS开发有时会用到第三方提供的SDK,一般是以.a的形式提供,用命令行可以看到其中的内容
<!--more-->

APP的最新一个版本集成了某广告联盟SDK,结果app store审核被拒了,原因是使用了iHasApp框架。怀疑是此SDK用到了,所以需要查看它提供的.a库的内容

直接用以下命令报错:

$ ar -x libPinyouSDK.a

ar: libPinyouSDK.a is a fat file (use libtool(1) or lipo(1) and ar(1) on it)

需要先转换格式,通过以下命令:

lipo libPinyouSDK.a -thin armv7 -output pinyou_armv7.a
ar -x pinyou_armv7.a

然后就会解压出所有.o文件,在其中找到了iHasApp.o

<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
分享到:
评论

相关推荐

    Linux静态链接库与模板类的处理方式

    通过使用`nm`命令查看静态链接库中的符号表,可以发现确实缺少了预期中的函数。这主要是因为模板类的特性所致。当编译器处理模板类时,它需要知道具体的类型参数来实例化模板。而在创建静态链接库时,由于没有指定...

    C语言静态动态链接库

    链接库主要分为两大类:静态链接库(Static Libraries)和动态链接库(Dynamic Libraries)。本文将详细介绍这两种链接库的概念、创建方法以及如何使用它们,并通过简单的示例进行说明。 **静态链接库**与**动态...

    Linux静态动态链接库的创建和使用

    链接库分为静态链接库和动态链接库两种类型。本文将详细介绍如何在Linux下创建和使用这两种类型的链接库。 #### 静态链接库 静态链接库是在编译时被链接到可执行文件中的库。一旦链接完成,库的内容就成为最终可...

    STM32V3.5固件库制成lib静态库

    制作lib静态库的过程是将源代码编译链接成一个可重用的库文件,这样在实际项目中就可以直接引用这个库,而不需要再次编译源代码。MDK(Keil uVision)是一个常见的STM32开发工具,其安装目录下的lib文件夹就包含了预...

    基于Vivado的SDK静态库封装技术及其应用

    内容概要:本文详细介绍在Vivado环境下,利用SDK对源代码进行静态库封装的具体过程与步骤,以达到代码的保密性和模块化管理的目的。文中重点讲解了创建Library项目、配置静态库、源文件的加入与编译以及最终生成并...

    Jni测试引用第三方静态库和动态库demo

    静态库是直接链接到目标程序中的,形成一个完整的可执行文件,而动态库则是在程序运行时动态加载,可以节省内存空间但增加了运行时依赖性。 1. 引用静态库(.a文件) 在Android的NDK环境中,静态库的构建和引用通常...

    CC++ 编译器和调试器以及静态库、动态库使用汇总

    - **静态库**:静态库(.a或.lib文件)在编译时会被直接链接到目标代码中,生成的可执行文件不依赖外部库。这意味着程序体积可能较大,但运行时无需担心依赖库的问题。 - **动态库**:动态库(.so或.dll文件)在...

    Linux下Gcc生成和使用静态库和动态库详解

    - **静态库**:在编译阶段,静态库中的代码就被直接链接到了可执行程序中。这意味着最终的可执行文件体积较大,因为它包含了所有所需的库代码。 - **动态库**(共享库):动态库的代码则是在程序运行时才被载入内存...

    VC 动态链接库(dll)编程深入浅出.pdf

    虽然本文的主要内容是关于动态链接库,但为了更好地理解DLL的作用,我们首先简要介绍一下静态链接库。静态链接库在编译时就会被链接到目标程序中,因此所有的库代码都会被包含在最终生成的可执行文件中。这使得应用...

    openssl-1.01e 静态库含头文件

    不过,这个名称并不常见,具体用途可能需要查看具体内容来确定。在大多数情况下,编译好的静态库应该位于一个名为 "lib" 或类似名称的文件夹下,而不是 "out32"。 使用 OpenSSL 静态库时,开发人员需要链接 libeay...

    Mupdf静态库和头文件

    集成Mupdf到Qt项目中,首先需要下载并解压提供的压缩包文件"Mupdf",该文件通常包含了Mupdf的源代码、静态库和头文件。在Windows系统上,这些文件可能包含.lib和.h文件,而在Linux或macOS上则是.a和.h文件。开发者...

    linux的下的动态库静态库

    在编译时,使用`-l`和`-L`选项链接库。 - **创建静态库**:首先使用`gcc -c`生成`.o`目标文件,然后使用`ar`命令创建`.a`静态库文件。在编译可执行文件时,使用`-l`、`-L`和`-static`选项链接静态库。 总的来说,...

    QT-5.15.0 Win10版本静态开发库文件

    - 链接库:在项目配置中,添加所需的库文件(.lib),例如`QT += core gui`指示链接Core和Gui模块。 - 编译和调试:利用QT Creator的集成环境进行编译和调试,确保所有依赖项都被正确链接。 总之,QT 5.15.0 静态...

    DLL 动态库 静态库 编写/调试

    动态链接库(DLL)和静态库是Windows操作系统中两种常见的库文件类型,它们在软件开发中扮演着重要的角色。本文将深入探讨DLL和静态库的编写与调试,以及MFC(Microsoft Foundation Classes)库的使用。 首先,让...

    MUPDF真机静态库文件a.zip

    静态库在编译时会被直接链接到目标应用程序中,成为应用程序的一部分,这意味着应用打包后不需要依赖外部库,减少了运行时出错的可能性。而MUPDF的静态库形式,使得开发者可以方便地将PDF处理功能集成到自己的iOS...

    Xcode制作包含xib等资源的静态库

    注意,静态库有真机版和模拟器版之分,可以通过lipo命令查看和合并不同架构的库。 6. 创建调用静态库的应用: 在Xcode中新建一个iOS应用项目,作为使用静态库的示例。 7. 链接静态库: 将静态库文件(.a文件)、...

    rtmpdump2.3 librtmp 静态库、动态库、源代码

    3. 静态库(.lib文件):适用于那些希望将librtmp与自己的应用程序静态链接的开发者,静态链接意味着不需要在运行时依赖额外的库文件。 4. 动态库(.dll文件):如果选择动态链接librtmp,那么运行时需要这个库文件...

    DLL动态链接库嵌入exe可执行文件

    整体来看,本文内容涉及了动态链接库的创建、使用和嵌入技术,对于希望深入了解Windows程序设计和优化程序部署过程的开发者来说,提供了实用的理论知识和实践操作指导。通过了解DLL与EXE之间的关系,开发者可以更加...

    关于在Linux平台上接静态库和共享库的使方法.docx

    那么,若系统中同时存在文件名相同的静态库文件和动态库文件时,该链接选项究竟会调用静态库文件还是动态库文件呢?经测试后可以发现,系统调用的是动态库文件,这是由于 Linux 系统中默认的是采用动态链接的方式。...

Global site tag (gtag.js) - Google Analytics