react-native-quick-crypto icon indicating copy to clipboard operation
react-native-quick-crypto copied to clipboard

IOS build error:Undefined symbols:

Open daxingyun opened this issue 1 year ago • 3 comments

ld: warning: ignoring duplicate libraries: '-lc++' ld: warning: Could not find or use auto-linked framework 'CoreAudioTypes': framework 'CoreAudioTypes' not found ld: warning: Could not find or use auto-linked framework 'OpenSSL': framework 'OpenSSL' not found ld: Undefined symbols: _BIO_ctrl, referenced from: margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int) in libreact-native-quick-crypto.a13 margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int) in libreact-native-quick-crypto.a13 margelo::BIOToStringOrBuffer(bio_st*, margelo::PKFormatType) in libreact-native-quick-crypto.a13 _BIO_free_all, referenced from: margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int) in libreact-native-quick-crypto.a13 margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 margelo::WritePrivateKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::PrivateKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 margelo::WritePublicKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::AsymmetricKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 std::__1::unique_ptr<bio_st, margelo::FunctionDeleter<bio_st, &BIO_free_all>>::resetabi:v160006 in libreact-native-quick-crypto.a13 _BIO_new, referenced from: margelo::WritePrivateKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::PrivateKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 margelo::WritePublicKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::AsymmetricKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _BIO_new_mem_buf, referenced from: margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int) in libreact-native-quick-crypto.a13 margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 _BIO_s_mem, referenced from: margelo::WritePrivateKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::PrivateKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 margelo::WritePublicKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::AsymmetricKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _BN_bin2bn, referenced from: margelo::ConvertSignatureToDER(margelo::ManagedEVPPKey const&, margelo::ByteSource&&) in libreact-native-quick-crypto.a18 margelo::ConvertSignatureToDER(margelo::ManagedEVPPKey const&, margelo::ByteSource&&) in libreact-native-quick-crypto.a18 _BN_free, referenced from: margelo::setup(std::__1::shared_ptrmargelo::RsaKeyPairGenConfig) in libreact-native-quick-crypto.a17 std::__1::unique_ptr<bignum_st, margelo::FunctionDeleter<bignum_st, &BN_free>>::resetabi:v160006 in libreact-native-quick-crypto.a17 _BN_new, referenced from: std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_1::operator()(facebook::jsi::Runtime&) const::'lambda'(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long), std::__1::allocator<margelo::MGLHmacHostObject::MGLHmacHostObject(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator> const&, facebook::jsi::Runtime&, facebook::jsi::ArrayBuffer&, std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_1::operator()(facebook::jsi::Runtime&) const::'lambda'(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>, facebook::jsi::Value (facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*&&, unsigned long&&) in libreact-native-quick-crypto.a11 _HMAC_Init_ex, referenced from: margelo::MGLHmacHostObject::MGLHmacHostObject(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator> const&, facebook::jsi::Runtime&, facebook::jsi::ArrayBuffer&, std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue) in libreact-native-quick-crypto.a11 margelo::MGLHmacHostObject::MGLHmacHostObject(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator> const&, facebook::jsi::Runtime&, facebook::jsi::ArrayBuffer&, std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue) in libreact-native-quick-crypto.a11 _HMAC_Update, referenced from: std::__1::__function::__func<margelo::MGLHmacHostObject::MGLHmacHostObject(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator> const&, facebook::jsi::Runtime&, facebook::jsi::ArrayBuffer&, std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_0::operator()(facebook::jsi::Runtime&) const::'lambda'(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long), std::__1::allocator<margelo::MGLHmacHostObject::MGLHmacHostObject(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator> const&, facebook::jsi::Runtime&, facebook::jsi::ArrayBuffer&, std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_0::operator()(facebook::jsi::Runtime&) const::'lambda'(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>, facebook::jsi::Value (facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*&&, unsigned long&&) in libreact-native-quick-crypto.a11 _HMAC_size, referenced from: std::__1::__function::__func<margelo::MGLHmacHostObject::MGLHmacHostObject(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator> const&, facebook::jsi::Runtime&, facebook::jsi::ArrayBuffer&, std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_1::operator()(facebook::jsi::Runtime&) const::'lambda'(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long), std::__1::allocator<margelo::MGLHmacHostObject::MGLHmacHostObject(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator> const&, facebook::jsi::Runtime&, facebook::jsi::ArrayBuffer&, std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_1::operator()(facebook::jsi::Runtime&) const::'lambda'(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>, facebook::jsi::Value (facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*&&, unsigned long&&) in libreact-native-quick-crypto.a11 _PEM_bytes_read_bio, referenced from: margelo::TryParsePublicKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, std::__1::unique_ptr<bio_st, margelo::FunctionDeleter<bio_st, &BIO_free_all>> const&, char const, std::__1::function<evp_pkey_st* (unsigned char const**, long)> const&) in libreact-native-quick-crypto.a13 _PEM_read_bio_PrivateKey, referenced from: margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 _PEM_write_bio_PKCS8PrivateKey, referenced from: margelo::WritePrivateKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::PrivateKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _PEM_write_bio_PUBKEY, referenced from: margelo::WritePublicKeyInner(evp_pkey_st*, std::__1::unique_ptr<bio_st, margelo::FunctionDeleter<bio_st, &BIO_free_all>> const&, margelo::AsymmetricKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _PEM_write_bio_RSAPrivateKey, referenced from: margelo::WritePrivateKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::PrivateKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _PEM_write_bio_RSAPublicKey, referenced from: margelo::WritePublicKeyInner(evp_pkey_st*, std::__1::unique_ptr<bio_st, margelo::FunctionDeleter<bio_st, &BIO_free_all>> const&, margelo::AsymmetricKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _PKCS5_PBKDF2_HMAC, referenced from: std::__1::__function::__func<margelo::MGLPbkdf2HostObject::MGLPbkdf2HostObject(std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_0::operator()(facebook::jsi::Runtime&) const::'lambda'(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long), std::__1::allocator<margelo::MGLPbkdf2HostObject::MGLPbkdf2HostObject(std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_0::operator()(facebook::jsi::Runtime&) const::'lambda'(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>, facebook::jsi::Value (facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*&&, unsigned long&&) in libreact-native-quick-crypto.a14 std::__1::__function::__func<margelo::MGLPbkdf2HostObject::MGLPbkdf2HostObject(std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_1::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long) const::'lambda'(facebook::jsi::Runtime&, std::__1::shared_ptrfacebook::react::Promise)::operator()(facebook::jsi::Runtime&, std::__1::shared_ptrfacebook::react::Promise) const::'lambda'(), std::__1::allocator<margelo::MGLPbkdf2HostObject::MGLPbkdf2HostObject(std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_1::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long) const::'lambda'(facebook::jsi::Runtime&, std::__1::shared_ptrfacebook::react::Promise)::operator()(facebook::jsi::Runtime&, std::__1::shared_ptrfacebook::react::Promise) const::'lambda'()>, void ()>::operator()() in libreact-native-quick-crypto.a14 _PKCS8_PRIV_KEY_INFO_free, referenced from: margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 std::__1::unique_ptr<pkcs8_priv_key_info_st, margelo::FunctionDeleter<pkcs8_priv_key_info_st, &PKCS8_PRIV_KEY_INFO_free>>::resetabi:v160006 in libreact-native-quick-crypto.a13 _RAND_bytes, referenced from: std::__1::__function::__func<margelo::MGLRandomHostObject::MGLRandomHostObject(std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_0::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long) const::'lambda'(facebook::jsi::Runtime&, std::__1::shared_ptrfacebook::react::Promise)::operator()(facebook::jsi::Runtime&, std::__1::shared_ptrfacebook::react::Promise) const::'lambda'(), std::__1::allocator<margelo::MGLRandomHostObject::MGLRandomHostObject(std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_0::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long) const::'lambda'(facebook::jsi::Runtime&, std::__1::shared_ptrfacebook::react::Promise)::operator()(facebook::jsi::Runtime&, std::__1::shared_ptrfacebook::react::Promise) const::'lambda'()>, void ()>::operator()() in libreact-native-quick-crypto.a16 std::__1::__function::__func<margelo::MGLRandomHostObject::MGLRandomHostObject(std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_1, std::__1::allocator<margelo::MGLRandomHostObject::MGLRandomHostObject(std::__1::shared_ptrfacebook::react::CallInvoker, std::__1::shared_ptrmargelo::DispatchQueue::dispatch_queue)::$_1>, facebook::jsi::Value (facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long)>::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*&&, unsigned long&&) in libreact-native-quick-crypto.a16 _RAND_poll, referenced from: margelo::generateRSAKeyPair(facebook::jsi::Runtime&, std::__1::shared_ptrmargelo::RsaKeyPairGenConfig) in libreact-native-quick-crypto.a17 _RAND_status, referenced from: margelo::generateRSAKeyPair(facebook::jsi::Runtime&, std::__1::shared_ptrmargelo::RsaKeyPairGenConfig) in libreact-native-quick-crypto.a17 _RSA_free, referenced from: margelo::WritePrivateKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::PrivateKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 margelo::WritePublicKeyInner(evp_pkey_st*, std::__1::unique_ptr<bio_st, margelo::FunctionDeleter<bio_st, &BIO_free_all>> const&, margelo::AsymmetricKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 std::__1::unique_ptr<rsa_st, margelo::FunctionDeleter<rsa_st, &RSA_free>>::resetabi:v160006 in libreact-native-quick-crypto.a13 _RSA_pkey_ctx_ctrl, referenced from: std::__1::optionalfacebook::jsi::Value margelo::MGLPublicCipher::Cipher<(margelo::MGLPublicCipher::Operation)0, &EVP_PKEY_encrypt_init, &EVP_PKEY_encrypt>(facebook::jsi::Runtime&, margelo::ManagedEVPPKey const&, int, evp_md_st const*, facebook::jsi::Value const&, facebook::jsi::ArrayBuffer&) in libreact-native-quick-crypto.a15 std::__1::optionalfacebook::jsi::Value margelo::MGLPublicCipher::Cipher<(margelo::MGLPublicCipher::Operation)1, &EVP_PKEY_decrypt_init, &EVP_PKEY_decrypt>(facebook::jsi::Runtime&, margelo::ManagedEVPPKey const&, int, evp_md_st const*, facebook::jsi::Value const&, facebook::jsi::ArrayBuffer&) in libreact-native-quick-crypto.a15 std::__1::optionalfacebook::jsi::Value margelo::MGLPublicCipher::Cipher<(margelo::MGLPublicCipher::Operation)1, &EVP_PKEY_sign_init, &EVP_PKEY_sign>(facebook::jsi::Runtime&, margelo::ManagedEVPPKey const&, int, evp_md_st const*, facebook::jsi::Value const&, facebook::jsi::ArrayBuffer&) in libreact-native-quick-crypto.a15 std::__1::optionalfacebook::jsi::Value margelo::MGLPublicCipher::Cipher<(margelo::MGLPublicCipher::Operation)0, &EVP_PKEY_verify_recover_init, &EVP_PKEY_verify_recover>(facebook::jsi::Runtime&, margelo::ManagedEVPPKey const&, int, evp_md_st const*, facebook::jsi::Value const&, facebook::jsi::ArrayBuffer&) in libreact-native-quick-crypto.a15 margelo::setup(std::__1::shared_ptrmargelo::RsaKeyPairGenConfig) in libreact-native-quick-crypto.a17 margelo::setup(std::__1::shared_ptrmargelo::RsaKeyPairGenConfig) in libreact-native-quick-crypto.a17 margelo::ApplyRSAOptions(margelo::ManagedEVPPKey const&, evp_pkey_ctx_st*, int, std::__1::optional) in libreact-native-quick-crypto.a18 margelo::ApplyRSAOptions(margelo::ManagedEVPPKey const&, evp_pkey_ctx_st*, int, std::__1::optional) in libreact-native-quick-crypto.a18 ... _SHA1_Final, referenced from: _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _SHA1_Init, referenced from: _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _SHA1_Transform, referenced from: _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _SHA1_Update, referenced from: _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha1 in libreact-native-quick-crypto.a2 _SHA256_Final, referenced from: _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _SHA256_Init, referenced from: _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _SHA256_Transform, referenced from: _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _SHA256_Update, referenced from: _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha256 in libreact-native-quick-crypto.a2 _SHA512_Final, referenced from: _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _SHA512_Init, referenced from: _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _SHA512_Transform, referenced from: _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _SHA512_Update, referenced from: _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _fastpbkdf2_hmac_sha512 in libreact-native-quick-crypto.a2 _X509_free, referenced from: std::__1::__function::__func<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_2, std::__1::allocator<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_2>, evp_pkey_st* (unsigned char const**, long)>::operator()(unsigned char const**&&, long&&) in libreact-native-quick-crypto.a13 std::__1::__function::__func<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_2, std::__1::allocator<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_2>, evp_pkey_st* (unsigned char const**, long)>::operator()(unsigned char const**&&, long&&) in libreact-native-quick-crypto.a13 _X509_get_pubkey, referenced from: std::__1::__function::__func<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_2, std::__1::allocator<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_2>, evp_pkey_st* (unsigned char const**, long)>::operator()(unsigned char const**&&, long&&) in libreact-native-quick-crypto.a13 _d2i_PKCS8PrivateKey_bio, referenced from: margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 _d2i_PKCS8_PRIV_KEY_INFO_bio, referenced from: margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 _d2i_PUBKEY, referenced from: margelo::ParsePublicKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::AsymmetricKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 std::__1::__function::__func<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_0, std::__1::allocator<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_0>, evp_pkey_st* (unsigned char const**, long)>::operator()(unsigned char const**&&, long&&) in libreact-native-quick-crypto.a13 _d2i_PrivateKey, referenced from: margelo::ParsePrivateKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::PrivateKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 _d2i_PublicKey, referenced from: margelo::ParsePublicKey(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, margelo::AsymmetricKeyEncodingConfig const&, char const, unsigned long) in libreact-native-quick-crypto.a13 std::__1::__function::__func<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_1, std::__1::allocator<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_1>, evp_pkey_st* (unsigned char const**, long)>::operator()(unsigned char const**&&, long&&) in libreact-native-quick-crypto.a13 _d2i_X509, referenced from: std::__1::__function::__func<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_2, std::__1::allocator<margelo::ParsePublicKeyPEM(std::__1::unique_ptr<evp_pkey_st, margelo::FunctionDeleter<evp_pkey_st, &EVP_PKEY_free>>, char const, int)::$_2>, evp_pkey_st* (unsigned char const**, long)>::operator()(unsigned char const**&&, long&&) in libreact-native-quick-crypto.a13 _i2d_ECDSA_SIG, referenced from: margelo::ConvertSignatureToDER(margelo::ManagedEVPPKey const&, margelo::ByteSource&&) in libreact-native-quick-crypto.a18 _i2d_PKCS8PrivateKey_bio, referenced from: margelo::WritePrivateKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::PrivateKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _i2d_PUBKEY_bio, referenced from: margelo::WritePublicKeyInner(evp_pkey_st*, std::__1::unique_ptr<bio_st, margelo::FunctionDeleter<bio_st, &BIO_free_all>> const&, margelo::AsymmetricKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _i2d_RSAPrivateKey_bio, referenced from: margelo::WritePrivateKey(facebook::jsi::Runtime&, evp_pkey_st*, margelo::PrivateKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 _i2d_RSAPublicKey_bio, referenced from: margelo::WritePublicKeyInner(evp_pkey_st*, std::__1::unique_ptr<bio_st, margelo::FunctionDeleter<bio_st, &BIO_free_all>> const&, margelo::AsymmetricKeyEncodingConfig const&) in libreact-native-quick-crypto.a13 clang: error: linker command failed with exit code 1 (use -v to see invocation)

daxingyun avatar May 14 '24 10:05 daxingyun

What version of RNQC?

Did you run pod install before trying to build your app?

boorad avatar May 14 '24 12:05 boorad

hey! im getting the same error. I'm on 0.7.0-rc.6 I did run pod install.

https://github.com/margelo/react-native-quick-crypto/issues/121 this issue might be related but this line does not resolve issue for me

pod 'OpenSSL-Universal', :modular_headers => true, :configurations => ['Release']

as I rollback to v0.6.1

I'm having this issue (resolved in 0.7.0-rc.1) https://github.com/margelo/react-native-quick-crypto/pull/253

my env

"react-native": "^0.74.1",
"react-native-quick-base64": "^2.1.2",
"react-native-quick-crypto": "^0.7.0-rc.6",
"react-native-mmkv": "^2.12.2",

iliapnmrv avatar May 17 '24 16:05 iliapnmrv

@daxingyun i managed to find the solution Solution 2 did not work for me, but Solution 1 works just fine https://stackoverflow.com/a/76455587/16786307

iliapnmrv avatar May 20 '24 07:05 iliapnmrv