Xcode 9.2:文件中缺少所需的架构 arm64 /......./libPaymentsSDK.a(2 片)
Xcode 9.2: missing required architecture arm64 in file /......../libPaymentsSDK.a (2 slices)
我正在我的应用程序中实施 PayTm PayTm 支付网关。在模拟器上它工作正常但是当我试图在设备上安装它时它显示错误。
我正在分享错误详情,请提出一些解决方案
warning: ignoring file /Users/..../libPaymentsSDK.a, missing required
architecture arm64 in file /Users/..../libPaymentsSDK.a (2 slices)
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_PGTransactionViewController", referenced from:
objc-class-ref in SubscribeMagzineVC.o "_OBJC_CLASS_$_PGOrder", referenced from:
objc-class-ref in SubscribeMagzineVC.o "_OBJC_CLASS_$_PGMerchantConfiguration", referenced from:
objc-class-ref in SubscribeMagzineVC.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit
code 1 (use -v to see invocation)
Architectures in the fat file: /Users/.../libPaymentsSDK.a are: armv7
i386 x86_64 arm64
似乎 libPaymentsSDK.a
有 2 个切片,我猜它们是 i386
和 x86_64
,arm64
可能不是其中之一,首先您可以检查哪个运行
有切片
xcrun -sdk iphoneos lipo -info libPaymentsSDK.a
您基本上还需要在 arm64
支持下重建 libPaymentsSDK
。
我推荐的最好方法是将它与 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
希望这能解决您的问题,祝您好运!
我正在我的应用程序中实施 PayTm PayTm 支付网关。在模拟器上它工作正常但是当我试图在设备上安装它时它显示错误。 我正在分享错误详情,请提出一些解决方案
warning: ignoring file /Users/..../libPaymentsSDK.a, missing required architecture arm64 in file /Users/..../libPaymentsSDK.a (2 slices)
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_PGTransactionViewController", referenced from: objc-class-ref in SubscribeMagzineVC.o "_OBJC_CLASS_$_PGOrder", referenced from: objc-class-ref in SubscribeMagzineVC.o "_OBJC_CLASS_$_PGMerchantConfiguration", referenced from: objc-class-ref in SubscribeMagzineVC.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
Architectures in the fat file: /Users/.../libPaymentsSDK.a are: armv7 i386 x86_64 arm64
似乎 libPaymentsSDK.a
有 2 个切片,我猜它们是 i386
和 x86_64
,arm64
可能不是其中之一,首先您可以检查哪个运行
xcrun -sdk iphoneos lipo -info libPaymentsSDK.a
您基本上还需要在 arm64
支持下重建 libPaymentsSDK
。
我推荐的最好方法是将它与 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
希望这能解决您的问题,祝您好运!