加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – 为什么找不到静态库头文件?

发布时间:2020-12-14 19:26:14 所属栏目:百科 来源:网络整理
导读:我已经使用 Clint Harris’ tutorial来设置项目之间的代码共享,一切都在我的计算机上正常工作.但是在我的同事的机器上,似乎编译器在构建时没有从静态库项目中找到头文件. 我的同事通过克隆git存储库来获得我的项目.我们经历了所有相关的构建标志和XCode设置n
我已经使用 Clint Harris’ tutorial来设置项目之间的代码共享,一切都在我的计算机上正常工作.但是在我的同事的机器上,似乎编译器在构建时没有从静态库项目中找到头文件.

我的同事通过克隆git存储库来获得我的项目.我们经历了所有相关的构建标志和XCode设置n次,但项目只是拒绝在他的机器上编译.

这就是我要求我的同事做的事情,主要是从教程中复制和粘贴:

>确保项目目录的完整路径中没有空格.
>在projects目录中,创建另一个名为“build_output”的文件夹.
>在XCode中,在“XCode>下;首选项“选择”构建“选项卡并将”将构建项目放置“到”自定义位置“,并指定您创建的公共构建目录的路径.
>将“放置中间构建文件”设置为“使用构建产品”.
>选择“源树”选项卡,然后通过单击“”按钮并填写列来创建新的源树变量.在“设置名称”和“显示名称”中,放置
[创建静态库的共享项目的名称].在路径中,您将完整路径放在框架文件夹中.

按照这些步骤,使用静态库的项目应该在他的机器上编译与我的相同.但事实并非如此.基本上,他得到的错误是:

error: TheFrameworkHeader.h: No such file or directory

然后是由缺少的标题引起的一串其他错误.

有什么策略可以解决这个问题吗?或者任何有类似经历并且可以分享一些来之不易的知识的人?我总结的说明中是否有任何遗漏?编译静态库时,是否需要在“复制标头”构建阶段设置标头的角色?

解决方法

尽管有一些有用的建议,我从来没有想过这个,但这里有一个类似情况的人的一点信息.我通过将原始项目拆分为两个来创建库和依赖项目.起初,库和应用程序只是同一项目中的两个目标.后来,我将应用程序移动到一个单独的项目中.一切似乎都有效,我将两个项目推送到远程git存储库.但是,当这些克隆在其他计算机上时,找不到库头.

后来,我发现当我在原始计算机上克隆项目时发生了同样的错误.经过大量的努力,我将其归结为一个可怕的细节:依赖项目文件夹的名称! (即,带有应用程序的项目,而不是库.)不是.xcodeproject包的名称,不是应用程序标识符,而是包含文件夹的名称.一改变,一切正常.如果我将其更改回原始名称(在任何计算机上),则再次找不到标题.

如果有人对此有任何见解,请发表回答!

编辑:由于我发布了这个,同样的问题发生在另一个项目,再次,只是重命名包含.xcodeproject文件夹的文件夹修复了问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读