margelo / react-native-quick-crypto

⚡️ A fast implementation of Node's `crypto` module written in C/C++ JSI
Other
627 stars 79 forks source link

IOS build error:Undefined symbols: #314

Open daxingyun opened 2 weeks ago

daxingyun commented 2 weeks ago

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_ptr) 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_ptr)::$_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_ptr, std::1::shared_ptr)::$_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_ptr, std::1::shared_ptr) 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_ptr, std::1::shared_ptr) 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_ptr, std::__1::shared_ptr)::$_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_ptr, std::__1::shared_ptr)::$_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_ptr, std::__1::shared_ptr)::$_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_ptr, std::__1::shared_ptr)::$_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_ptr, std::1::shared_ptr)::$_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_ptr, std::__1::shared_ptr)::$_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_ptr, std::1::shared_ptr)::$_1::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long) const::'lambda'(facebook::jsi::Runtime&, std::__1::shared_ptr)::operator()(facebook::jsi::Runtime&, std::1::shared_ptr) const::'lambda'(), std::1::allocator<margelo::MGLPbkdf2HostObject::MGLPbkdf2HostObject(std::1::shared_ptr, std::1::shared_ptr)::$_1::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long) const::'lambda'(facebook::jsi::Runtime&, std::__1::shared_ptr)::operator()(facebook::jsi::Runtime&, std::1::shared_ptr) 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_ptr, std::__1::shared_ptr)::$_0::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const*, unsigned long) const::'lambda'(facebook::jsi::Runtime&, std::1::shared_ptr)::operator()(facebook::jsi::Runtime&, std::1::shared_ptr) const::'lambda'(), std::1::allocator<margelo::MGLRandomHostObject::MGLRandomHostObject(std::1::shared_ptr, std::1::shared_ptr)::$_0::operator()(facebook::jsi::Runtime&, facebook::jsi::Value const&, facebook::jsi::Value const, unsigned long) const::'lambda'(facebook::jsi::Runtime&, std::1::shared_ptr)::operator()(facebook::jsi::Runtime&, std::__1::shared_ptr) const::'lambda'()>, void ()>::operator()() in libreact-native-quick-crypto.a16 std::1::function::func<margelo::MGLRandomHostObject::MGLRandomHostObject(std::1::shared_ptr, std::__1::shared_ptr)::$_1, std::1::allocator<margelo::MGLRandomHostObject::MGLRandomHostObject(std::__1::shared_ptr, std::__1::shared_ptr)::$_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_ptr) in libreact-native-quick-crypto.a17 _RAND_status, referenced from: margelo::generateRSAKeyPair(facebook::jsi::Runtime&, std::__1::shared_ptr) 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>>::reset[abi:v160006](rsa_st) in libreact-native-quick-crypto.a13 _RSA_pkey_ctx_ctrl, referenced from: std::1::optional 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::optional 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::optional 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::optional 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_ptr) in libreact-native-quick-crypto.a17 margelo::setup(std::1::shared_ptr) 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)

boorad commented 2 weeks ago

What version of RNQC?

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

iliapnmrv commented 2 weeks ago

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 commented 1 week ago

@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