【问题标题】:Other Linker Flags set to -ObjC [duplicate]其他链接器标志设置为 -ObjC [重复]
【发布时间】:2013-05-10 04:26:23
【问题描述】:

我在构建设置中包含了设置为 -ObjC 的其他链接器标志,因为我想使用需要此功能的框架 (https://github.com/rs/SDWebImage)

但是,添加此标志后,我得到了链接器错误:

Undefined symbols for architecture armv7:

“_OBJC_CLASS_$_SKProductsRequest”,引用自:

  objc-class-ref in Parse(PFPurchase.o)

“_OBJC_CLASS_$_SKPayment”,引用自:

  objc-class-ref in Parse(PFPurchase.o)

“_OBJC_CLASS_$_SKPaymentQueue”,引用自:

  objc-class-ref in Parse(PFPurchase.o)

  objc-class-ref in Parse(PFPaymentTransactionObserver.o)

ld:未找到架构 armv7 的符号

clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

删除 -ObjC 链接器标志,项目将再次构建而不会出现错误。对原因有任何想法吗?谢谢。

【问题讨论】:

  • 我可以知道你的xCode、部署目标版本和设备ios版本吗?

标签: ios objective-c linker-errors


【解决方案1】:

您需要添加StoreKit.framework

Parse iOS SDK1.0.62 版本引入了应用内购买。这需要将 StoreKit.framework 添加到现有 Parse iOS 项目中,即使没有使用 IAP。

这样做:

  1. 选择您的项目
  2. 选择您的目标
  3. 选择构建阶段
  4. 在 Link Binaries with Libraries 中,单击 +
  5. 搜索 StoreKit 并添加

然后将框架导入你的项目:

#import "StoreKit/StoreKit.h"

在此Parse community link 中查看相同的错误。

【讨论】:

    【解决方案2】:

    在您的项目中添加 Storekit 框架,并在您使用的地方使用此语句为 In App Purchage 编写代码

    #import "StoreKit/StoreKit.h"
    

    【讨论】:

    • 如果 IAP 未使用,#import 是多余的(无论如何与 链接器 错误无关)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-27
    • 1970-01-01
    • 2013-10-23
    • 2013-02-20
    • 2013-07-29
    • 2016-05-27
    • 2015-12-31
    相关资源
    最近更新 更多