stripe / stripe-ios

Stripe iOS SDK
https://stripe.com
MIT License
2.13k stars 982 forks source link

Undefined symbols for architecture arm64: #1266

Closed Fames42 closed 5 years ago

Fames42 commented 5 years ago

Summary

Issues while building project with Stripe 16.0.2. I currently trying to make integration with Stripe and in documentation I found out that i need STPPaymentHandler interface, which is not presented in 15.0.1 I used previously. After upgrading to 16.0.2 I encountered 3 issues:

 Undefined symbols for architecture arm64:
  "_SecCertificateCopyKey", referenced from:
      _STDSSecCertificateCopyPublicKey in libStripe3DS2.a(STDSSecTypeUtilities.o)
  "_UITextContentTypeOneTimeCode", referenced from:
      ftiMnAA in libStripe3DS2.a(STDSTextChallengeView.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Actually, is there any way to make handling without STPPaymentHandler?

iOS version

11.4

Installation method

CocoaPods.

SDK version

csabol-stripe commented 5 years ago

@Fames42 this looks like an error in our build process. We will try to get a fix out this week!

If you need to run 3DS2, right now STPPaymentHandler is the only way to do so. Otherwise you can confirm the PaymentIntent using STPAPIClient and then check its status manually.

csabol-stripe commented 5 years ago

Ah, this is actually only an issue when building with old SDKs. Apple now requires that all Apps submitted to the app store must be built using at least iOS 12.1 SDK (note that apps built with the 12.1 SDK can still run on older iOS versions -- going back to iOS 8).

Starting March 27, 2019, all iOS apps submitted to the App Store will need to be built with the iOS 12.1 SDK or later https://developer.apple.com/ios/submit/

@Fames42 if you update your Xcode version this issue should be resolved :) Please submit another ticket if you are still experiencing issues after updating to a more recent iOS SDK!