美文网首页iOS 进阶
动态库的链接

动态库的链接

作者: Sunxxxxx丶 | 来源:发表于2017-09-04 18:45 被阅读125次

    零: 前言

    一直没搞懂这三个之间的区别.

    动态库的链接.png

    一: target depnedencies(编译前)

    这个选项只是告诉工程在运行的时候先去编译这里导入的库.

    二:Link Binary With Libraries(编译时期)

    Link Binary With Libraries里添加的即你的某个project需要链接的库.

    这里添加的库都会被编译到工程的最终包里.
    只有在这里添加了.app才能找到该库的.o文件

    三.Embedded Binaries(运行时)

    这个是告诉工程在app运行时去哪些库里找实现方法.

    这个选项只有在可运行的project里有.即你工程的总壳(有main.m文件的project)
    不可运行(静.动态库 >> 没有main.m文件)的project是没有这个选项的.因为他们不可能进入运行时状态.

    四.总结

    1.当你导入一个库时.target dependencies和link binary with libraries两个选项都必须设置.
    只有可运行的project里需要设置embedded binaries.

    2.所以当你引入一个静态库的时候.只需要设置Link binary with libraries选项就可以了.因为他不需要编译.

    3.当你embedded 一个库时xcode会自动帮你设置target dependencies 和 link binary with libraries

    相关文章

      网友评论

        本文标题:动态库的链接

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