【问题标题】:uplaod image and video to amazon S3 (arm64 error)将图像和视频上传到亚马逊 S3(arm64 错误)
【发布时间】:2015-03-02 12:41:06
【问题描述】:

我的代码用于上传视频和照片,它工作正常,但是当我将 arm64 放入有效架构时,它显示以下错误

ld: warning: ignoring file /Users/clicktraders/Desktop/On Going Projects/VideoUploading/AWSRuntime.framework/AWSRuntime, missing required architecture x86_64 in file /Users/clicktraders/Desktop/On Going Projects/VideoUploading/AWSRuntime.framework/AWSRuntime (3 slices)
ld: warning: ignoring file /Users/clicktraders/Desktop/On Going Projects/VideoUploading/AWSS3.framework/AWSS3, missing required architecture x86_64 in file /Users/clicktraders/Desktop/On Going Projects/VideoUploading/AWSS3.framework/AWSS3 (3 slices)
Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_AmazonS3Client", referenced from:
      objc-class-ref in CLUploadService.o
      objc-class-ref in SyncViewController.o
      objc-class-ref in FirstViewController.o
  "_OBJC_CLASS_$_S3CannedACL", referenced from:
      objc-class-ref in CLUploadService.o
  "_OBJC_CLASS_$_S3PutObjectRequest", referenced from:
      objc-class-ref in CLUploadService.o
  "_OBJC_CLASS_$_S3TransferManager", referenced from:
      objc-class-ref in SyncViewController.o
      objc-class-ref in FirstViewController.o
  "_OBJC_EHTYPE_$_AmazonClientException", referenced from:
      GCC_except_table1 in CLUploadService.o
  "_OBJC_EHTYPE_$_AmazonServiceException", referenced from:

请指导我有什么问题。 @z3r0

【问题讨论】:

  • 您是否链接到静态库?是为arm64构建的静态库。库项目是否添加为您的 App 项目中的子项目?如果是这样,您可能还需要将 arm64 添加到库目标的架构中。
  • 我正在链接一个静态库。
  • arm64 是否在您的库项目的有效架构中,如果有的话?
  • 是的,我将应用程序上传到应用程序商店,但没有在有效架构中添加 arm 64。但我收到以下电子邮件“缺少 64 位支持 - 从 2015 年 2 月 1 日开始,新的 iOS 应用程序提交到 App Store必须包含 64 位支持并使用 iOS 8 SDK 构建。从 2015 年 6 月 1 日开始,应用程序更新也需要遵循相同的要求。要在您的项目中启用 64 位,我们建议使用默认的 Xcode 构建设置“标准架构“构建具有 32 位和 64 位代码的单个二进制文件。”然后我将arm 64添加到有效架构中。添加错误后
  • 我想你误解了我的意思。我的意思是,你如何链接库。有两种方法:1)您拥有库的 XCode 项目,并将其作为子项目添加到您的应用程序项目中。 2)您将预构建的 libXYZ.a 添加到链接阶段,并将仅头文件添加到您的搜索路径。您正在使用以下哪种方法?

标签: ios iphone amazon-s3 arm64


【解决方案1】:

基于 cmets:

如果您使用的是预构建的 libXYZ.a,则您的静态库不是针对 64 位编译的。您需要更新的版本。如果您有源代码,您可以重新编译支持 64 位系统。

【讨论】:

    【解决方案2】:

    所有链接的框架都必须支持64-bit。您的 AWS 框架版本太旧。你至少应该有AWS SDK for iOS 1.7.0。这是第一个支持 64 位的版本。否则,AppStore 将不会接受您的应用。您可以从以下位置获取它们:

    https://aws.amazon.com/releasenotes/iOS

    【讨论】:

      猜你喜欢
      • 2012-07-07
      • 2017-08-01
      • 1970-01-01
      • 2016-01-11
      • 2017-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-29
      相关资源
      最近更新 更多