Safeheron / safeheron-crypto-suites-cpp

Cryptographic primitives developed by Safeheron
Other
36 stars 16 forks source link

Undefined symbols for architecture arm64 Error When Make project. #5

Closed maweis1981 closed 1 year ago

maweis1981 commented 1 year ago

[ 73%] Linking CXX shared library libMultiPartyEcdsa.dylib Undefined symbols for architecture arm64: "safeheron::multi_party_ecdsa::gg18::sign::MtA_Step1(safeheron::bignum::BN&, safeheron::pail::PailPubKey const&, safeheron::bignum::BN const&, safeheron::bignum::BN const&)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round0::ComputeVerify() in round0.cpp.o "safeheron::multi_party_ecdsa::gg18::sign::MtA_Step2(safeheron::bignum::BN&, safeheron::bignum::BN&, safeheron::pail::PailPubKey const&, safeheron::bignum::BN const&, safeheron::bignum::BN const&, safeheron::bignum::BN const&, safeheron::bignum::BN const&, safeheron::bignum::BN const&)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round1::ComputeVerify() in round1.cpp.o "safeheron::multi_party_ecdsa::gg18::sign::MtA_Step3(safeheron::bignum::BN&, safeheron::bignum::BN const&, safeheron::pail::PailPrivKey const&, safeheron::bignum::BN const&)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round2::ComputeVerify() in round2.cpp.o "safeheron::multi_party_ecdsa::gg18::SignKey::FromBase64(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Context::CreateContext(safeheron::multi_party_ecdsa::gg20::sign::Context&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, safeheron::bignum::BN const&) in context.cpp.o "safeheron::proto::CurvePoint::CurvePoint(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round2BCMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round2BCMessage&) const in round2_bc_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round3BCMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round3BCMessage&) const in round3_bc_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round4BCMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round4BCMessage&) const in round4_bc_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round4BCMessage::ToBase64(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) const in round4_bc_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round4BCMessage::ToJsonString(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) const in round4_bc_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round5BCMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round5BCMessage&) const in round5_bc_message.cpp.o safeheron::multi_party_ecdsa::cmp::MinimalLocalParty::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::MinimalParty&) const in minimal_party_local.cpp.o ... "safeheron::proto::HEGProof_V3::HEGProof_V3(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round5BCMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round5BCMessage&) const in round5_bc_message.cpp.o "safeheron::proto::TwoDLNProof::TwoDLNProof(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::cmp::aux_info_key_refresh::Round1BCMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::aux_info_key_refresh::Round1BCMessage&) const in round1_bc_message.cpp.o "safeheron::proto::DLogProof_V2::DLogProof_V2(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::cmp::minimal_key_gen::Round2BCMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::minimal_key_gen::Round2BCMessage&) const in round2_bc_message.cpp.o safeheron::multi_party_ecdsa::cmp::aux_info_key_refresh::Round2P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::aux_info_key_refresh::Round2P2PMessage&) const in round2_p2p_message.cpp.o "safeheron::proto::PedersenProof::PedersenProof(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round2BCMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round2BCMessage&) const in round2_bc_message.cpp.o "safeheron::proto::PailAffRangeProof::PailAffRangeProof(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round1P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round1P2PMessage&) const in round1_p2p_message.cpp.o "safeheron::proto::NoSmallFactorProof::NoSmallFactorProof(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::cmp::aux_info_key_refresh::Round2P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::aux_info_key_refresh::Round2P2PMessage&) const in round2_p2p_message.cpp.o "safeheron::proto::PailBlumModulusProof::PailBlumModulusProof(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::cmp::aux_info_key_refresh::Round2P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::aux_info_key_refresh::Round2P2PMessage&) const in round2_p2p_message.cpp.o "safeheron::proto::PailEncRangeProof_V1::PailEncRangeProof_V1(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round0P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round0P2PMessage&) const in round0_p2p_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round0P2PMessage::ToBase64(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) const in round0_p2p_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round0P2PMessage::ToJsonString(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) const in round0_p2p_message.cpp.o "safeheron::proto::PailEncRangeProof_V2::PailEncRangeProof_V2(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::cmp::sign::Round0P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::sign::Round0P2PMessage&) const in round0_p2p_message.cpp.o "safeheron::proto::PailEncGroupEleRangeProof::PailEncGroupEleRangeProof(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round4P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round4P2PMessage&) const in round4_p2p_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round4P2PMessage::ToBase64(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) const in round4_p2p_message.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round4P2PMessage::ToJsonString(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) const in round4_p2p_message.cpp.o safeheron::multi_party_ecdsa::cmp::sign::Round1P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::sign::Round1P2PMessage&) const in round1_p2p_message.cpp.o safeheron::multi_party_ecdsa::cmp::sign::Round2P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::sign::Round2P2PMessage&) const in round2_p2p_message.cpp.o "safeheron::proto::PailAffGroupEleRangeProof_V1::PailAffGroupEleRangeProof_V1(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round1P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::gg20::sign::Round1P2PMessage&) const in round1_p2p_message.cpp.o "safeheron::proto::PailAffGroupEleRangeProof_V2::PailAffGroupEleRangeProof_V2(google::protobuf::Arena*, bool)", referenced from: safeheron::multi_party_ecdsa::cmp::sign::Round1P2PMessage::ToProtoObject(safeheron::proto::multi_party_ecdsa::cmp::sign::Round1P2PMessage&) const in round1_p2p_message.cpp.o "safeheron::multi_party_ecdsa::gg18::SignKey::get_remote_party_pos(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) const", referenced from: safeheron::multi_party_ecdsa::gg20::sign::Round1::ParseMsg(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) in round1.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round1::ReceiveVerify(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) in round1.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round2::ParseMsg(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) in round2.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round2::ReceiveVerify(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) in round2.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round3::ParseMsg(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) in round3.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round3::ReceiveVerify(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) in round3.cpp.o safeheron::multi_party_ecdsa::gg20::sign::Round4::ParseMsg(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) in round4.cpp.o ... ld: symbol(s) not found for architecture arm64

maweis1981 commented 1 year ago

Move to multi-party-ecdsa-cpp project