RestKit / RestKit.h文件找不到错误 - 版本0.10.0(RestKit/Rest

2019-06-23 15:30发布

我失去了我的头发,我试图让RestKit建设和工作。 我得到了可怕的“词汇或预处理问题:RestKit / RestKit.h文件未找到”的消息。 我使用的Xcode 4.2和我的项目是为iOS。

此前,我曾调试模式RestKit 0.9.0完美的工作。 然后,我遇到了问题,而试图存档。 阅读这个论坛,尝试一些解决方案后,我决定升级到0.10.0与希望,这将解决这一问题。

现在,我的项目甚至没有建立在调试模式下,我得到同样的RestKit /找不到RestKit.h文件错误。

我有这样的标题下方的搜索路径:“$(BUILT_PRODUCTS_DIR)/../../头”。 你可以请建议(为0.10.0版本):1)RestKit的物理位置应该在哪里呢? (这可能并不重要,但哪一个为你工作 - 与希望,我可以反映你的设置)2)我想指出我的头搜索路径“/开发/库/ RestKit-RestKit-69adee9 /”和后来“ /开发/库/ RestKit-RestKit-69adee9 /编译”

Throughly困惑和沮丧..

EDIT1:几个小时后,我放弃了。 核爆我的项目。 创建一个新的项目。 重新创建的文件(复制自上一个项目粘贴)。 现在,“未找到RestKit”错误不见了! 但现在,我得到这个其他错误:

Undefined symbols for architecture i386:
"_OBJC_CLASS_$_RKObjectMapping", referenced from:
objc-class-ref in myclassname1.o
"_OBJC_CLASS_$_RKObjectManager", referenced from:
objc-class-ref in myclassname2.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我检查及确信,我没加RestKit.framework ......我不知道为什么铛错误正在发生

EDIT2:在libRestKit.a是红色的。 它根据是OK https://github.com/RestKit/RestKit/wiki/Installation-Troubleshooting只为它赫克,我删除了所有链接的相关性。 删除了“其他连接标志”。 关闭和重新开放的Xcode。 把他们都回来了。 这个错误消失。 也许我错过了一个框架,导致铛错误。 但它是我检查和双重检查的可能性极小。 它现在。

它建立和debug模式的档案。 我还没有尝试过的分布模式呢。

EDIT3:苹果批准我的应用程序在第一次去和它是活的! 我仍然不知道这里是什么引起的问题。 的摧毁现有的项目和创建过旧的文件一个新的和复制(定期检查,如果建造经过)不能是一个解决办法。 所以,我要离开这个问题打开。

Answer 1:

我想我可以提供一些线索这光。

当您升级到0.10.0,你改变你的头搜索路径"$(BUILT_PRODUCTS_DIR)/../../Headers" ,对不对?

该安装指南只是说,为项目设置做到这一点。 然而, 在许多情况下 ,矿山包括在内,你还需要更新他们的目标设置为好。

目标设置将仍然有旧的头搜索路径,以任何理由决定不从项目设置继承。



Answer 2:

提醒你 - 它共劈 - 但它得到了我的项目运行。

假设你已经跟着从RestKit Github上安装步骤 https://github.com/RestKit/RestKit/blob/master/README.md#quick-start-aka-tldr

在RestKit目标,转到构建阶段 。 下副本头下拉菜单中,将所有的头文件,从“项目”为“公共”。

干净,构建,运行。



Answer 3:

解决方案,我发现没有复制和过去的“$(BUILT_PRODUCTS_DIR)/../../头”到你的目标的头搜索路径。

在五小时后我删除复制并粘贴“,手动输入中的他们和它的工作。



Answer 4:

我最近与升级发挥各地从RestKit 0.9.3至0.10.0和有同样的事情。 你删除RestKit / build目录? 这包含.h文件的副本,并建立0.9.x.当创建作为构建过程的一部分 做产品 - >清洁似乎并没有删除这些文件。 0.10.0似乎没有创建此构建目录。 我怀疑你的生成错误是由于仍然被拾起这些文件。

此外,为了充分回答你的问题,我一直RestKit文件:
(项目目录)/框架/ RestKit
这是一个git子模块,因此包含一个特定版本的RestKit混帐回购协议的副本。

而头搜索路径是:
$(BUILT_PRODUCTS_DIR)/../../头

为0.9.3的标题搜索路径是:
$(SOURCE_ROOT)/ RestKit /编译

我认为该指南有价值(也许这就是你现在已经是什么): https://github.com/RestKit/RestKit/wiki/Installing-RestKit-in-Xcode-4.x并注意只左右具有libRestKit部分。一个项目中的最新版本RestKit在更早版本的一切都有:

  • libRestKitNetwork.a
  • libRestKitObjectMapping.a
  • libRestKitSupport.a
  • libRestKitJSONParserJSONKit.a
  • libRestKitXMLParserLibxml.a
  • libRestKitCoreData.a

如果你把所有的这些,从项目中删除它们。



Answer 5:

与过去几个小时了同样的问题被打。 什么终于为我工作(我并不是说这是一个明确的修复,但至少它的东西去尝试)。

  • 从您的项目中删除RestKit
  • 关闭项目
  • 未来移动RestKit文件夹到您的主xcodeproject
  • 打开RestKit建立项目
  • 关闭RestKit项目
  • 打开您的项目,并重新导入RestKit项目到您的xcodeproject
  • 修正了目标设置的依赖关系和联反应,
  • 在“$(BUILT_PRODUCTS_DIR)/../../头”搜索路径添加到这两个项目设置和目标设置。 (它只是为我工作,当他们在这两个上市)。

这最后一步可能是所有必须修复它,但因为我太在外面拉我的头发在此,我尝试了很多不同的解决方案,不想承担这最后一个步骤是它固定本身的唯一原因。

(和我的设置是的XCode 4.3.2和OS X 10.7.3)



Answer 6:

在这个同样的错误,花2天,并导航到每一个不可能性谷歌的结果后,我终于明白了!

这不是由于导出的数据设置,这些都是在XCode中4.3.2已经很好。

问题是,你正在做一个#import "RKObjectMapping.h"或其他一些包括。

而是使用@class RKObjectMapping或者,如果你真的NEAD的.H使用<RestKit/RKObjectMapping.h>

我去@class因为我只需要编译...

希望这有助于!



Answer 7:

有这个问题了。 这将编译和运行模拟器就好了,但不会存档。 这里就是我错在哪里?

我这样做:

#import "RestKit.h"

而不是正确的方法:

#import <RestKit/RestKit.h>


Answer 8:

今天我有完全相同的错误。 我们所有的代码是在GitHub库和restkit文件夹被忽略,以便没有restkit文件都在那里。 现在,当Xcode中打开项目,并找到丢失的东西,它假定全乱套了。 因此,删除了文件夹,重新克隆它,然后抓起restkit的全新副本,并在那里,瞧扔了,一切正常。



Answer 9:

我发现我需要手动建立RestKit目标为头文件复制到构建目录。 显然,主项目建设不可靠运行子项目构建?

所以,我的步骤来解决这个问题:

  • 选择RestKit运行目标
  • 建立
  • 确保头搜索路径对所有目标设置(显然是对项目本身是不够的)
  • 建设主体工程


Answer 10:

有一个非常类似的问题。 它原来是我不小心添加了构建设置为“ 用户头搜索路径”,而不是“标题搜索路径”。



Answer 11:

我的解决方案:

当添加"$(BUILT_PRODUCTS_DIR)/../../Headers"到目标- >构建设置- >搜索路径- >头文件搜索路径,没有设置值。

相反,价值已经被设置为用户头搜索路径。 所以你双击标题搜索路径,一些与面板线出现,你点击+下,左,粘贴该字符串出现,单击其他地方关闭该窗口,什么都没有。 页眉搜索路径没有得到更新,但用户头搜索路径一样。

?!!!

所以,你点击的标题搜索路径披露按钮。 点击+号属性的正确,并添加值...



Answer 12:

这里有一个常见的错误,会让你想掴自己,你修复后。

是的,你绝对要添加"$(BUILT_PRODUCTS_DIR)/../../Headers"你的目标的Header Search Paths ,但不要忘记,包括引号!

我说的是之前的报价$(BUILT_DIR)/../../Headers

如果您的构建配置有名称的空间(例如我的是“特设”)与您刚刚添加$(BUILT_PRODUCTS_DIR)/../../Headers 前和后的报价,你可能最终得到“词汇或预处理问题:RestKit / RestKit.h文件未找到”的问题。



Answer 13:

这是我没有想到一个问题有针对此问题的答案不够,因为如果你有这个问题,感觉好像有什么工作要做! 尝试所有提出的解决方案后(他们没有工作)。 我终于发现了问题

问题是,我的一个文件夹中有中有空格。 不要在你的源文件夹名称中使用空格!

Used to be : (/Xcode projects/basicRestkit etc...)  -- lots of pain and suffering  
changed to : (/projects/basicRestkit) -- lots of rejoicing

这引起了标题搜索路径不工作,因此无法找到这些文件。 这里很可能是使用alter头搜索路径找到你的文件,即使有空间的方式。

这可能帮不了你,但它很好可能。 祝好运。



Answer 14:

对我来说,只有这些步骤的工作。 请在这里希望这将有助于。



文章来源: RestKit/RestKit.h file not found error - version 0.10.0