0

My application builds fine for the simulator but not the device:

ld: warning: ignoring file /Users/newuser/Downloads/release-1.5-tag/build/Release-iphoneos/parsekit.a, file was built for archive which is not the architecture being linked (armv7)

I'm using the ParseKit lib which doesn't seem to like being mixed with armv7.

I think I have to do some form of linking with the library? But how?

Thanks.

4

3 回答 3

2

您似乎已经链接了该库,只是它不是为 armv7 构建的。

ParseKit Xcode 项目有一个名为 ParseKitMobile 的目标,它是为 armv7 构建的。尝试使用它。

在此处输入图像描述

您还可以尝试将“Base SDK”设置更改为 iOS,这应该为您提供架构的 arm 选项。

于 2011-08-27T13:27:29.537 回答
1

armv7您可能必须为架构重新编译 ParseKit 。您是否按照ParseKit 主页上的iPhone 说明进行操作?它似乎没有明确提到 armv7,但我想如果您将parsekit.aParseKit 项目文件中的目标添加到您自己的项目文件中,那么 XCode 应该认识到必须为armv7.

注意:这些说明是针对 XCode 3 的,我猜你正在使用 XCode 4,但整个想法应该是一样的。

于 2011-08-27T13:23:38.253 回答
1

parsekit.a是一个静态库,它必须与具有相同 ABI 的二进制文件静态链接。所以你有以下选择:

  1. 为相同的 ABI 构建代码parsekit.a
  2. 为 armv7构建parsekit.a
  3. 将 parsekit 构建为共享库;
  4. 为其编写包装器parsekit.a将构建为共享库并公开您需要的所有 API。
于 2011-08-27T13:26:29.107 回答