升级到Xcode 4和iOS 4.3后出现iPhone JSON错误

时间:2011-03-12 14:33:03

标签: iphone objective-c xcode json ios

我刚刚更新到Xcode 4和iOS 4.3,但现在当我尝试构建/运行我的项目时,它返回以下JSON SDK错误:

ld: warning: ignoring file /var/folders/OV/OVQ5LuaPFY4lW0L0a9jdRk+++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs/iphoneos-iPhoneOS4.3-dqtvoenrseczxwakgamuhnlmhcbu/usr/local/lib/libjson.a, file was built for archive which is not the architecture being linked (armv7)
Undefined symbols for architecture armv7:
  "_OBJC_CLASS_$_SBJSON", referenced from:
      objc-class-ref in Neighbourhoods.o
      objc-class-ref in StreetLevel.o
      ...
ld: symbol(s) not found for architecture armv7
collect2: ld returned 1 exit status

升级到Xcode 4之后,它现在似乎正在尝试构建版本,而在旧版本中我认为它正在构建用于调试,但我似乎无法看到我可以在哪里更改它。

我在〜/ Library / SDKs /

下安装了JSON SDK

SDK已添加到“附加SDK”部分,用于发布和调试。我还确保在发布和调试中也添加了以下'Other Linker Flags':“ - all_load -ObjC -ljson”。

检查/添加所有内容后,仍然无法构建。

任何人都能对这个问题有所了解吗?

3 个答案:

答案 0 :(得分:1)

我不确定为什么它最终会在更新后停止工作,但我现在已经删除了SDK并且刚刚将源代码添加到项目中,这并不理想,但它确实有效。

答案 1 :(得分:1)

我在构建第三方库时遇到了同样的错误,在4.2.6之下它没有抱怨过。打开库项目,转到菜单“项目 - >编辑项目设置 - >构建选项卡”,然后查看“架构”。

在子项“架构”和“有效架构”下,检查它们是否包含对“armv7”的引用。如果不是,则必须选择/添加它。

对您的有效目标执行相同操作:菜单“项目 - >编辑有效目标 - >构建”。

进行更改后,再次构建,您不应该有链接器错误。

答案 2 :(得分:0)

在更新Xcode 4后,我切换到SDK 4.3后,我的工作项目无法链接。我从目标架构中删除了ARM7,只留下了ARM6,并修复了它。在黑暗中拍摄,但也许其他人也可以使用此解决方法。

相关问题