2

Getting issue while using vrf crate ,cannot link symbols to Open ssl

Fast and extensible Verifiable Random Function (VRF) library;

**Steps tried : **

  1. brew install openssl
  2. brew unlink openssl && brew link openssl --force
  3. cargo clean, cargo cache -a

This is what I get from a for

 rustc --version --verbose
  rustc 1.65.0-nightly (060e47f74 2022-08-23)
  binary: rustc
  commit-hash: 060e47f74a91b28c3db28d80a6a9d6841ca51026
  commit-date: 2022-08-23
  host:x86_64-apple-darwin
 release: 1.65.0-nightly LLVM version: 15.0.0

From various forums I already tried to:

install gcc reset

xcode-select


  = note: ld: warning: ignoring file /opt/homebrew/opt/openssl@3/lib/libssl.dylib, building for macOS-x86_64 but attempting to link with file built for macOS-arm64
          ld: warning: ignoring file /opt/homebrew/opt/openssl@3/lib/libcrypto.dylib, building for macOS-x86_64 but attempting to link with file built for macOS-arm64
          Undefined symbols for architecture x86_64:
            "_ERR_lib_error_string", referenced from:
                openssl::error::Error::library::h1288fa371c6db858 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.8.rcgu.o)
            "_BN_bin2bn", referenced from:
                openssl::bn::BigNum::from_slice::h7889e7648c555534 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_BN_set_word", referenced from:
                openssl::bn::BigNum::from_u32::_$u7b$$u7b$closure$u7d$$u7d$::h5fe8b65992570a44 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_BN_new", referenced from:
                openssl::bn::BigNum::new::hf5fb7b03e71fcd20 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_BN_div", referenced from:
                openssl::bn::BigNumRef::checked_rem::h861842ba7acba676 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_BN_num_bits", referenced from:
                openssl::bn::BigNumRef::num_bits::hcd4d09cde6629f84 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_BN_rshift", referenced from:
                openssl::bn::BigNumRef::rshift::h2f99c5727e975a6a in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_BN_free", referenced from:
                _$LT$openssl..bn..BigNum$u20$as$u20$core..ops..drop..Drop$GT$::drop::hb36190a08b2e1fc2 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_BN_add", referenced from:
                openssl::bn::BigNumRef::checked_add::h068772590f809d39 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_ERR_reason_error_string", referenced from:
                openssl::error::Error::reason::hb35550bd01b39b03 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.8.rcgu.o)
            "_OPENSSL_init_ssl", referenced from:
                openssl_sys::openssl::init::_$u7b$$u7b$closure$u7d$$u7d$::h62e24c585c1af8a4 in libopenssl_sys-8ca092cedad1efdc.rlib(openssl_sys-8ca092cedad1efdc.openssl_sys.9e84026e-cgu.9.rcgu.o)
            "_EC_POINT_oct2point", referenced from:
                openssl::ec::EcPoint::from_bytes::h0e5b23e91d4b49ac in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_BN_CTX_new", referenced from:
                openssl::bn::BigNumContext::new::h50471544fe3a8969 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_EVP_DigestInit_ex", referenced from:
                openssl::hash::Hasher::init::h6d1990d11598f018 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EC_POINT_new", referenced from:
                openssl::ec::EcPoint::new::ha834f0d8934eff99 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_ERR_get_error_all", referenced from:
                openssl::error::Error::get::h9b6e9e3700a7fe1a in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.8.rcgu.o)
            "_EC_POINT_invert", referenced from:
                openssl::ec::EcPointRef::invert::he87de2ae08ff73a6 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EC_POINT_mul", referenced from:
                openssl::ec::EcPointRef::mul::hac92a506db85a8ea in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
                openssl::ec::EcPointRef::mul_generator::h6e58941398f2d967 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EVP_MD_CTX_new", referenced from:
                openssl::hash::Hasher::new::h8c5333bc70dec022 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_BN_CTX_free", referenced from:
                _$LT$openssl..bn..BigNumContext$u20$as$u20$core..ops..drop..Drop$GT$::drop::h9b9d91f680e519d4 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_BN_cmp", referenced from:
                _$LT$openssl..bn..BigNumRef$u20$as$u20$core..cmp..Ord$GT$::cmp::hb13e84daed4fcee2 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_EC_POINT_free", referenced from:
                _$LT$openssl..ec..EcPoint$u20$as$u20$core..ops..drop..Drop$GT$::drop::h55beb3002b6cb3eb in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_BN_nnmod", referenced from:
                openssl::bn::BigNumRef::nnmod::hcf09631a0b6c38c8 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_EVP_MD_CTX_free", referenced from:
                _$LT$openssl..hash..Hasher$u20$as$u20$core..ops..drop..Drop$GT$::drop::hab40abf772125c9f in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EC_GROUP_get_order", referenced from:
                openssl::ec::EcGroupRef::order::h6c999643d6f2ec66 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_BN_bn2bin", referenced from:
                openssl::bn::BigNumRef::to_vec::h7f0e0061a0d92100 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_EC_GROUP_new_by_curve_name", referenced from:
                openssl::ec::EcGroup::from_curve_name::h715ab7cad85cf922 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EC_GROUP_get_curve_GFp", referenced from:
                openssl::ec::EcGroupRef::components_gfp::h887e712718025eae in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_BN_mul", referenced from:
                openssl::bn::BigNumRef::checked_mul::hd2a262cb92f947b1 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.9.rcgu.o)
            "_EC_POINT_point2oct", referenced from:
                openssl::ec::EcPointRef::to_bytes::h7c88fb4fa942ecc0 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EC_POINT_add", referenced from:
                openssl::ec::EcPointRef::add::h9d0237ef8ad7c126 in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EVP_DigestUpdate", referenced from:
                openssl::hash::Hasher::update::h139833592fe722ed in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EVP_DigestFinal_ex", referenced from:
                openssl::hash::Hasher::finish::h9d2802fae7ef5d3e in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
            "_EC_GROUP_free", referenced from:
                _$LT$openssl..ec..EcGroup$u20$as$u20$core..ops..drop..Drop$GT$::drop::hc2f8a6ffda63d5c4 in libvrf-b19a6f581938764c.rlib(vrf-b19a6f581938764c.vrf.c0344b25-cgu.14.rcgu.o)
            "_EVP_sha256", referenced from:
                openssl::hash::MessageDigest::sha256::h1198d33edff32c4b in libopenssl-51b4d3d73f3cd4d0.rlib(openssl-51b4d3d73f3cd4d0.openssl.8e4e5984-cgu.3.rcgu.o)
          ld: symbol(s) not found for architecture x86_64
          clang: error: linker command failed with exit code 1 (use -v to see invocation)
          

`

To resolve unreference symbol issue for openssl

paleonix
  • 2,293
  • 1
  • 13
  • 29

0 Answers0