• Xcode含静态库多项目依赖编译


    1.新建 Static Library 项目

    选择 File -> New -> Project , 项目模板选择 Cocoa Touch Static Library , 项目名称命名为 MyLib.xcodeproj , 注意选中 Use Automatic Reference Counting 。

    clip_image001

    Xcode 会在项目中自动生成 MyLib.h 和 MyLib.m 文件, 单击 MyLib.h 文件, 添加下面的方法定义:

    + (NSString*)getMyTag;

    再打开 MyLib.m 文件, 添加刚刚定义两个文件的实现:

    + (NSString*)getMyTag{

        return @"MyLib";

    }

    MyLib 项目, 在中间的编辑器窗口中选择项目的 Target , 选择 Build Phases 标签, 展开 Copy Headers 分组, 下面有三个子分组, 分别是 Public 、 Project 与 Private , 将 MyLib.h 拖拽到 Public 分组即可。clip_image003

    保存所有文件, 选择 Product -> Build , 进行编译, 生成 libMyLib.a 文件, 同时也会自动将 MyLib.h 文件复制到输出目录(workspace下的Build-Products文件夹)。

    2

    使用静态类库项目

    选择 File -> New -> Project , 项目模板选择 iOS -> Application -> Single View Application , 项目名称命名为 MyApp , 注意勾选 Use Storyboards 和 Use Automatic Reference Counting 。

    将 MyLib 项目拖拽到 MyApp 项目的 Frameworks 文件夹,(在拖动过程中先关闭MyLib文件) 在弹出的对话框中选择 Create groups for any added folders , 然后点击 Finish 按钮。

    clip_image007

    选择targets下得Build Phases,将自己新建的库添加到里面

    点击下面的加号按钮, 将工作区的 libMyLib.a 添加进去。

    clip_image009

    接下来添加头文件搜索目录, 选中 Targets 上面的 Project , 选择 Build Settings 标签页,在搜索框内输入 header search 进行过滤, 找到 Header Search Paths , 添加一行, 输入 ../MyLib , 并选中递归复选框,就是后面的non-recursive更改为recursive。

    clip_image010

    验证一下对 MyLib 的引用是否正确, 打开 MyApp 项目的 ViewController.m , 添加对 MyLib.h 的引用(有时候会没提示,但不报错), 并编译 MyApp , 如果编译成功, 则表示引用正确。

  • 相关阅读:
    vs2008将 win32项目改为console项目
    python——pandas技巧(处理dataframe每个元素,不用for,而用apply)
    leetcode计划
    初识Flask——基于python的web框架
    开展论文研究——推荐系统
    c++如何按照map的value进行排序?
    sklearn决策树应用及可视化
    黑客可远程控制!微软紧急修补2个新漏洞,以下系统版本都受影响
    高通推出新的智能手表芯片,为安卓系统注入新的活力
    美国宇航局向有创意的科技小企业支付5100万美元
  • 原文地址:https://www.cnblogs.com/xiaochaozi/p/3761308.html
Copyright © 2020-2023  润新知