Xcode 9.2:文件/.../libPaymentsSDK.a中丢失了所需的架构arm64(2个切片)

问题描述 投票:3回答:1

我正在将PayTm PayTm支付网关实施到我的应用程序中。在模拟器上它工作正常,但当我试图在设备上安装它时显示错误。我正在分享错误详情请提出一些解决方案

警告:忽略文件/Users/..../libPaymentsSDK.a,缺少文件/Users/..../libPaymentsSDK.a中所需的架构arm64(2个切片)

架构arm64的未定义符号: “_OBJC_CLASS _ $ _ PGTransactionViewController”,引自:SubscribeMagzineVC.o中的objc-class-ref“_OBJC_CLASS _ $ _ PGOrder”,引用自:SubscribeMagzineVC.o中的objc-class-ref“_OBJC_CLASS _ $ _ PGMerchantConfiguration”,引用自:objc-class-ref在SubscribeMagzineVC.o ld:找不到架构arm64 clang的符号:错误:链接器命令失败,退出代码为1(使用-v查看调用)

enter image description here

胖文件中的体系结构:/Users /.../libPaymentsSDK.a是:armv7 i386 x86_64 arm64

enter image description here

ios objective-c xcode arm64 paytm
1个回答
3
投票

看起来像libPaymentsSDK.a有2个切片,我的猜测他们是i386x86_64arm64可能不是其中之一,首先你可以通过运行检查哪些切片

xcrun -sdk iphoneos lipo -info libPaymentsSDK.a

你基本上需要用libPaymentsSDK支持重建arm64

我建议的最好的方法是将它与Cocoapods集成到你的项目中,然后一切都将正确构建,如果你不想这样做,只需自己重建libPaymentsSDK但确保arm64存在。

更简单的方法是使用SDK中提供的一个here只需下载并用该文件替换旧的

要使用lipo命令,您只需打开terminal.app,然后找到libPaymentSDK.a文件的确切位置,您可以通过进入xcode,从左侧窗格中选择文件,然后在右侧窗格中看到文件详细信息在文件检查器中,只需复制它的路径,它将是这样的:

/Users/myUsername/Projects/exampleAPP/myAppLibs/libPaymentSDK.a

然后,您只需将该路径添加到命令的末尾即可:

xcrun -sdk iphoneos lipo -info /Users/myUsername/Projects/exampleAPP/myAppLibs/libPaymentSDK.a

希望这能解决你的问题,祝你好运!

© www.soinside.com 2019 - 2024. All rights reserved.