美文网首页
Xcode7.3中构建静态库

Xcode7.3中构建静态库

作者: ldldlkdldld | 来源:发表于2016-08-04 20:22 被阅读40次

创建静态库

Xcode中编译静态库其实非常简单,就是新建一个静态库类型的项目,如图中所示。

Xcode中创建静态库

但是这篇文章把这个简单的过程讲得太细致了。而且由于Xcode也在升级,所以那篇文章中的方法对于最新的Xcode(7.3.1)并不适用,反正我是没成功。

如果要向项目中添加新的类,直接创建新的Cocoa类即可。如果是添加已有代码到库中,直接将代码拖动到项目中,注意一定要把Add to targets项选中,默认是不选的,我之前就是因为这个原因失败。在其他项目引用该静态库时找不到头文件。

将已有代码加入静态库项目

添加代码后可以在项目的Build Phases中看到类似下图的文件结构。在分析此结构之前先来回忆下静态库要解决的问题,无非是隐藏代码实现,只提供编译成二进制的静态库和头文件供调用者使用。因此对于库调用者,只关心库和调用该库所需要的头文件。对于库开发者,关心的只是编译该库所需要的源码和头文件。

此时再看Build Phases的文件结构,其中Compile Sources是要编译进库的源文件,这个在添加代码到项目,并且选中了Add to targets时,会自动出现在Compile Sources的列表中。

Copy Files中的头文件,是库开发者要暴露给调用者的头文件,此列表中的文件在代码加入项目中时不会自动加入,需要手动添加进去。

静态库文件结构

完成上述设置后,可以直接生成静态库了,就这么简单。此时选中静态库文件,右击选中Show in Finder可以看到类似下图所示的文件结构。

生成的静态库在文件系统中的结构

测试静态库

新建一个项目,将上述静态库的project文件直接拖进新的项目中就可以了。

被拖进测试项目的静态库项目

在target设置中,将静态库链入。

链接静态库

调用库。

调用创建的静态库

相关文章

  • Xcode7.3中构建静态库

    创建静态库 Xcode中编译静态库其实非常简单,就是新建一个静态库类型的项目,如图中所示。 但是这篇文章把这个简单...

  • 一文教你如何构建动态链接库

    话说前一篇文章一文教你如何构建静态链接库向大家介绍了如何构建静态库,虽然解决了我们的一大麻烦,但静态库在使用中任然...

  • cmake构建静态或动态库(三)

    前言 前文的的最终目标都是构建一个可执行文件,本文目标是如何构建静态库或者动态库目标如下:1、创建一个静态库lib...

  • iOS静态库之间互调冲突问题

    研究目的 1. 在其他静态库(B静态库)中导入公共静态库(A静态库),想直接使用公共静态库(A静态库)中的方法和m...

  • 构建Framework静态库

    iOS创建静态库 纯笔记。类似于各类SDK,只暴露bundle文件,和Framework文件。可以将本地文件(高内...

  • Ndk生成so和a库,然后主项目进行调用

    在 NDK 开发中引入第三方静态库和动态库 静态库和动态库 静态库 静态库文件后缀一般为 .a ,利用静态库编译成...

  • Xcode编译提示duplicate symbol _xxx i

    在应用开发过程中,经常会用到静态库,比如音视频编解码静态库、友盟分享静态库、第三方支付静态库...有时静态库中也会...

  • ios中静态库.a的制作

    在ios中制作静态库之前,先来了解关于静态库的一些概念。 八、静态库和动态库在使用上的区别。静态库:链接时,静态库...

  • ios中静态库.a的制作和使用

    在ios中制作静态库之前,先来了解关于静态库的一些概念。 八、静态库和动态库在使用上的区别。静态库:链接时,静态库...

  • cmake引用静态或动态库(四)

    前言 上一篇文章讲解了如何构建静态库或者动态库,本文目标为:1、引入外部静态库2、引入外部动态库 准备工作 创建s...

网友评论

      本文标题:Xcode7.3中构建静态库

      本文链接:https://www.haomeiwen.com/subject/ekxhsttx.html