@joseph-henry so framework is building now but I am not able to build the project with framework. Facing arm-64 error.
Undefined symbols for architecture arm64:
"typeinfo for std::bad_alloc", referenced from:
ZeroTier::Node::Node(void*, void*, ZT_Node_Callbacks const*, long long) in zt(Node.o)
GCC_except_table43 in zt(Node.o)
GCC_except_table45 in zt(Node.o)
GCC_except_table46 in zt(Node.o)
GCC_except_table47 in zt(Node.o)
GCC_except_table48 in zt(Node.o)
GCC_except_table49 in zt(Node.o)
...
"std::bad_alloc::~bad_alloc()", referenced from:
ZeroTier::Node::Node(void*, void*, ZT_Node_Callbacks const*, long long) in zt(Node.o)
"___cxa_guard_acquire", referenced from:
ZeroTier::Utils::getSecureRandom(void*, unsigned int) in zt(Utils.o)
ZeroTier::NetworkConfig::fromDictionary(ZeroTier::Dictionary<484456u> const&) in zt(NetworkConfig.o)
"___cxa_guard_abort", referenced from:
ZeroTier::Utils::getSecureRandom(void*, unsigned int) in zt(Utils.o)
"vtable for __cxxabiv1::__vmi_class_type_info", referenced from:
typeinfo for moodycamel::ConcurrentQueue<zts_event_msg_t*, moodycamel::ConcurrentQueueDefaultTraits>::ProducerBase in zt(Events.o)
NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
"std::runtime_error::~runtime_error()", referenced from:
ZeroTier::PhyZeroTier::NodeService*::Phy(ZeroTier::NodeService*, bool, bool) in zt(NodeService.o)
ZeroTier::Thread ZeroTier::Thread::startZeroTier::VirtualTap(ZeroTier::VirtualTap*) in zt(VirtualTap.o)
ZeroTier::PhyZeroTier::VirtualTap*::Phy(ZeroTier::VirtualTap*, bool, bool) in zt(VirtualTap.o)
ZeroTier::Thread ZeroTier::Thread::startZeroTier::PortMapperImpl(ZeroTier::PortMapperImpl*) in zt(PortMapper.o)
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::basic_string(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&)", referenced from:
ZeroTier::NodeService::fatalErrorMessage() const in zt(NodeService.o)
std::__1::vector<std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > > >::push_back(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) in zt(OSUtils.o)
ZeroTier::Bond::linkAllowed(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >&, ZeroTier::SharedPtrZeroTier::Link) in zt(Bond.o)
ZeroTier::Bond::addCustomLink(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >&, ZeroTier::SharedPtrZeroTier::Link) in zt(Bond.o)
ZeroTier::Bond::addCustomPolicy(ZeroTier::SharedPtrZeroTier::Bond const&) in zt(Bond.o)
ZeroTier::Bond::createBond(ZeroTier::RuntimeEnvironment const*, ZeroTier::SharedPtrZeroTier::Peer const&) in zt(Bond.o)
ZeroTier::Bond::getLinkBySocket(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, unsigned long long, bool) in zt(Bond.o)
...
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::append(char const*)", referenced from:
ZeroTier::NodeService::run() in zt(NodeService.o)
ZeroTier::OSUtils::rmDashRf(char const*) in zt(OSUtils.o)
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::assign(char const*)", referenced from:
ZeroTier::NodeService::run() in zt(NodeService.o)
ZeroTier::NodeService::phyOnDatagram(void*, void**, sockaddr const*, sockaddr const*, void*, unsigned long) in zt(NodeService.o)
ZeroTier::Network::setConfiguration(void*, ZeroTier::NetworkConfig const&, bool) in zt(Network.o)
ZeroTier::IncomingPacket::_doERROR(ZeroTier::RuntimeEnvironment const*, void*, ZeroTier::SharedPtrZeroTier::Peer const&) in zt(IncomingPacket.o)
"std::length_error::~length_error()", referenced from:
std::__1::__throw_length_error(char const*) in zt(Utilities.o)
std::__1::__throw_length_error(char const*) in zt(NodeService.o)
std::__1::__throw_length_error(char const*) in zt(VirtualTap.o)
ZeroTier::OSUtils::ztsnprintf(char*, unsigned int, char const*, ...) in zt(OSUtils.o)
std::__1::__throw_length_error(char const*) in zt(OSUtils.o)
std::__1::__throw_length_error(char const*) in zt(PortMapper.o)
std::__1::__throw_length_error(char const*) in zt(Node.o)
...
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::~basic_string()", referenced from:
ZeroTier::NodeService::~NodeService() in zt(NodeService.o)
ZeroTier::VirtualTap::~VirtualTap() in zt(VirtualTap.o)
__GLOBAL__sub_I_Bond.cpp in zt(Bond.o)
ZeroTier::Network::~Network() in zt(Network.o)
"operator delete", referenced from:
ZeroTier::Identity::generate() in zt(Identity.o)
ZeroTier::Identity::locallyValidate() const in zt(Identity.o)
ZeroTier::Multicaster::send(void*, long long, ZeroTier::SharedPtrZeroTier::Network const&, ZeroTier::Address const&, ZeroTier::MulticastGroup const&, ZeroTier::MAC const&, unsigned int, void const*, unsigned int) in zt(Multicaster.o)
"std::runtime_error::runtime_error(char const*)", referenced from:
ZeroTier::PhyZeroTier::NodeService*::Phy(ZeroTier::NodeService*, bool, bool) in zt(NodeService.o)
ZeroTier::Thread ZeroTier::Thread::startZeroTier::VirtualTap(ZeroTier::VirtualTap*) in zt(VirtualTap.o)
ZeroTier::PhyZeroTier::VirtualTap*::Phy(ZeroTier::VirtualTap*, bool, bool) in zt(VirtualTap.o)
ZeroTier::Thread ZeroTier::Thread::startZeroTier::PortMapperImpl(ZeroTier::PortMapperImpl*) in zt(PortMapper.o)
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::basic_string(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, unsigned long, unsigned long, std::__1::allocator const&)", referenced from:
ZeroTier::NodeService::run() in zt(NodeService.o)
"___cxa_free_exception", referenced from:
std::__1::__throw_length_error(char const*) in zt(Utilities.o)
std::__1::__throw_length_error(char const*) in zt(NodeService.o)
ZeroTier::PhyZeroTier::NodeService*::Phy(ZeroTier::NodeService*, bool, bool) in zt(NodeService.o)
ZeroTier::Thread ZeroTier::Thread::startZeroTier::VirtualTap(ZeroTier::VirtualTap*) in zt(VirtualTap.o)
std::__1::__throw_length_error(char const*) in zt(VirtualTap.o)
ZeroTier::PhyZeroTier::VirtualTap*::Phy(ZeroTier::VirtualTap*, bool, bool) in zt(VirtualTap.o)
ZeroTier::OSUtils::ztsnprintf(char*, unsigned int, char const*, ...) in zt(OSUtils.o)
...
"vtable for __cxxabiv1::__si_class_type_info", referenced from:
typeinfo for moodycamel::ConcurrentQueue<zts_event_msg_t*, moodycamel::ConcurrentQueueDefaultTraits>::ImplicitProducer in zt(Events.o)
typeinfo for ZeroTier::Node in zt(Node.o)
NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
"std::__1::__vector_base_common::__throw_length_error() const", referenced from:
std::__1::__vector_base<ZeroTier::InetAddress, std::__1::allocatorZeroTier::InetAddress >::__throw_length_error() const in zt(Utilities.o)
std::__1::__vector_base<ZeroTier::World::Root, std::__1::allocatorZeroTier::World::Root >::__throw_length_error() const in zt(Utilities.o)
std::__1::__vector_base<ZeroTier::MulticastGroup, std::__1::allocatorZeroTier::MulticastGroup >::__throw_length_error() const in zt(NodeService.o)
std::__1::__vector_base<ZeroTier::InetAddress, std::__1::allocatorZeroTier::InetAddress >::__throw_length_error() const in zt(NodeService.o)
std::__1::__vector_base<std::__1::pair<unsigned long long, std::__1::pair<std::__1::vector<ZeroTier::MulticastGroup, std::__1::allocatorZeroTier::MulticastGroup >, std::__1::vector<ZeroTier::MulticastGroup, std::__1::allocatorZeroTier::MulticastGroup > > >, std::__1::allocator<std::__1::pair<unsigned long long, std::__1::pair<std::__1::vector<ZeroTier::MulticastGroup, std::__1::allocatorZeroTier::MulticastGroup >, std::__1::vector<ZeroTier::MulticastGroup, std::__1::allocatorZeroTier::MulticastGroup > > > > >::__throw_length_error() const in zt(NodeService.o)
std::__1::__vector_base<std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > > >::__throw_length_error() const in zt(NodeService.o)
std::__1::__vector_base<ZeroTier::InetAddress, std::__1::allocatorZeroTier::InetAddress >::__throw_length_error() const in zt(VirtualTap.o)
...
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::append(char const*, unsigned long)", referenced from:
_zts_util_sign_root_set in zt(Utilities.o)
ZeroTier::NodeService::run() in zt(NodeService.o)
ZeroTier::OSUtils::readFile(char const*, std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >&) in zt(OSUtils.o)
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::push_back(char)", referenced from:
ZeroTier::NodeService::run() in zt(NodeService.o)
ZeroTier::OSUtils::rmDashRf(char const*) in zt(OSUtils.o)
ZeroTier::OSUtils::split(char const*, char const*, char const*, char const*) in zt(OSUtils.o)
"std::terminate()", referenced from:
___clang_call_terminate in zt(Controls.o)
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::operator=(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&)", referenced from:
_zts_util_sign_root_set in zt(Utilities.o)
ZeroTier::Bond::assignBondingPolicyToPeer(long long, std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) in zt(Bond.o)
ZeroTier::Bond::setBondParameters(int, ZeroTier::SharedPtrZeroTier::Bond, bool) in zt(Bond.o)
"std::bad_alloc::bad_alloc()", referenced from:
ZeroTier::Node::Node(void*, void*, ZT_Node_Callbacks const*, long long) in zt(Node.o)
"typeinfo for std::runtime_error", referenced from:
ZeroTier::PhyZeroTier::NodeService*::Phy(ZeroTier::NodeService*, bool, bool) in zt(NodeService.o)
ZeroTier::Thread ZeroTier::Thread::startZeroTier::VirtualTap(ZeroTier::VirtualTap*) in zt(VirtualTap.o)
ZeroTier::PhyZeroTier::VirtualTap*::Phy(ZeroTier::VirtualTap*, bool, bool) in zt(VirtualTap.o)
ZeroTier::Thread ZeroTier::Thread::startZeroTier::PortMapperImpl(ZeroTier::PortMapperImpl*) in zt(PortMapper.o)
GCC_except_table43 in zt(Node.o)
"___cxa_allocate_exception", referenced from:
_zts_util_sign_root_set in zt(Utilities.o)
void ZeroTier::World::serialize<8480u>(ZeroTier::Buffer<8480u>&, bool) const in zt(Utilities.o)
unsigned int ZeroTier::World::deserialize<8480u>(ZeroTier::Buffer<8480u> const&, unsigned int) in zt(Utilities.o)
std::__1::__throw_length_error(char const*) in zt(Utilities.o)
void ZeroTier::Identity::serialize<8480u>(ZeroTier::Buffer<8480u>&, bool) const in zt(Utilities.o)
void ZeroTier::InetAddress::serialize<8480u>(ZeroTier::Buffer<8480u>&) const in zt(Utilities.o)
unsigned int ZeroTier::Identity::deserialize<8480u>(ZeroTier::Buffer<8480u> const&, unsigned int) in zt(Utilities.o)
...
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::compare(unsigned long, unsigned long, char const*, unsigned long) const", referenced from:
ZeroTier::NodeService::run() in zt(NodeService.o)
ZeroTier::PortMapperImpl::threadMain() in zt(PortMapper.o)
ZeroTier::Bond::getPolicyCodeByStr(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) in zt(Bond.o)
"typeinfo for std::length_error", referenced from:
std::__1::__throw_length_error(char const*) in zt(Utilities.o)
std::__1::__throw_length_error(char const*) in zt(NodeService.o)
std::__1::__throw_length_error(char const*) in zt(VirtualTap.o)
ZeroTier::OSUtils::ztsnprintf(char*, unsigned int, char const*, ...) in zt(OSUtils.o)
std::__1::__throw_length_error(char const*) in zt(OSUtils.o)
std::__1::__throw_length_error(char const*) in zt(PortMapper.o)
std::__1::__throw_length_error(char const*) in zt(Node.o)
...
"___cxa_throw", referenced from:
_zts_util_sign_root_set in zt(Utilities.o)
void ZeroTier::World::serialize<8480u>(ZeroTier::Buffer<8480u>&, bool) const in zt(Utilities.o)
unsigned int ZeroTier::World::deserialize<8480u>(ZeroTier::Buffer<8480u> const&, unsigned int) in zt(Utilities.o)
std::__1::__throw_length_error(char const*) in zt(Utilities.o)
void ZeroTier::Identity::serialize<8480u>(ZeroTier::Buffer<8480u>&, bool) const in zt(Utilities.o)
void ZeroTier::InetAddress::serialize<8480u>(ZeroTier::Buffer<8480u>&) const in zt(Utilities.o)
unsigned int ZeroTier::Identity::deserialize<8480u>(ZeroTier::Buffer<8480u> const&, unsigned int) in zt(Utilities.o)
...
"typeinfo for int", referenced from:
_zts_util_sign_root_set in zt(Utilities.o)
void ZeroTier::World::serialize<8480u>(ZeroTier::Buffer<8480u>&, bool) const in zt(Utilities.o)
unsigned int ZeroTier::World::deserialize<8480u>(ZeroTier::Buffer<8480u> const&, unsigned int) in zt(Utilities.o)
void ZeroTier::Identity::serialize<8480u>(ZeroTier::Buffer<8480u>&, bool) const in zt(Utilities.o)
void ZeroTier::InetAddress::serialize<8480u>(ZeroTier::Buffer<8480u>&) const in zt(Utilities.o)
unsigned int ZeroTier::Identity::deserialize<8480u>(ZeroTier::Buffer<8480u> const&, unsigned int) in zt(Utilities.o)
unsigned int ZeroTier::InetAddress::deserialize<8480u>(ZeroTier::Buffer<8480u> const&, unsigned int) in zt(Utilities.o)
...
"___cxa_rethrow", referenced from:
ZeroTier::Node::Node(void*, void*, ZT_Node_Callbacks const*, long long) in zt(Node.o)
ZeroTier::Node::ncSendConfig(unsigned long long, unsigned long long, ZeroTier::Address const&, ZeroTier::NetworkConfig const&, bool) in zt(Node.o)
ZeroTier::NetworkConfig::toDictionary(ZeroTier::Dictionary<484456u>&, bool) const in zt(NetworkConfig.o)
"___cxa_call_unexpected", referenced from:
ZeroTier::VirtualTap::threadMain() in zt(VirtualTap.o)
ZeroTier::OSUtils::redirectUnixOutputs(char const*, char const*) in zt(OSUtils.o)
ZeroTier::PortMapperImpl::threadMain() in zt(PortMapper.o)
"vtable for std::length_error", referenced from:
std::length_error::length_error(char const*) in zt(Utilities.o)
std::length_error::length_error(char const*) in zt(NodeService.o)
std::length_error::length_error(char const*) in zt(VirtualTap.o)
std::length_error::length_error(char const*) in zt(OSUtils.o)
std::length_error::length_error(char const*) in zt(PortMapper.o)
std::length_error::length_error(char const*) in zt(Node.o)
std::length_error::length_error(char const*) in zt(Multicaster.o)
...
NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
"___cxa_guard_release", referenced from:
ZeroTier::Utils::getSecureRandom(void*, unsigned int) in zt(Utils.o)
ZeroTier::NetworkConfig::fromDictionary(ZeroTier::Dictionary<484456u> const&) in zt(NetworkConfig.o)
"operator delete(void*)", referenced from:
ZeroTier::init_subsystems() in zt(Controls.o)
_zts_id_new in zt(Controls.o)
_zts_id_pair_is_valid in zt(Controls.o)
__runNodeService in zt(Controls.o)
_zts_node_free in zt(Controls.o)
_zts_util_sign_root_set in zt(Utilities.o)
std::__1::vector<ZeroTier::World::Root, std::__1::allocatorZeroTier::World::Root >::push_back(ZeroTier::World::Root&&) in zt(Utilities.o)
...
"std::__1::__basic_string_common::__throw_length_error() const", referenced from:
std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::__throw_length_error() const in zt(Controls.o)
std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::__throw_length_error() const in zt(NodeService.o)
std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::__throw_length_error() const in zt(VirtualTap.o)
std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::__throw_length_error() const in zt(OSUtils.o)
std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::__throw_length_error() const in zt(PortMapper.o)
std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::__throw_length_error() const in zt(Bond.o)
"vtable for __cxxabiv1::__class_type_info", referenced from:
typeinfo for moodycamel::details::ConcurrentQueueProducerTypelessBase in zt(Events.o)
typeinfo for ZeroTier::NetworkController::Sender in zt(Node.o)
NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
"std::logic_error::logic_error(char const*)", referenced from:
std::length_error::length_error(char const*) in zt(Utilities.o)
std::length_error::length_error(char const*) in zt(NodeService.o)
std::length_error::length_error(char const*) in zt(VirtualTap.o)
std::length_error::length_error(char const*) in zt(OSUtils.o)
std::length_error::length_error(char const*) in zt(PortMapper.o)
std::length_error::length_error(char const*) in zt(Node.o)
std::length_error::length_error(char const*) in zt(Multicaster.o)
...
"typeinfo for std::exception", referenced from:
GCC_except_table14 in zt(NodeService.o)
"operator new(unsigned long)", referenced from:
ZeroTier::init_subsystems() in zt(Controls.o)
_zts_id_new in zt(Controls.o)
_zts_util_sign_root_set in zt(Utilities.o)
std::__1::vector<ZeroTier::World::Root, std::__1::allocatorZeroTier::World::Root >::push_back(ZeroTier::World::Root&&) in zt(Utilities.o)
unsigned int ZeroTier::World::deserialize<8480u>(ZeroTier::Buffer<8480u> const&, unsigned int) in zt(Utilities.o)
std::__1::enable_if<(__is_cpp17_forward_iteratorZeroTier::World::Root*::value) && (is_constructible<ZeroTier::World::Root, std::__1::iterator_traitsZeroTier::World::Root*::reference>::value), void>::type std::__1::vector<ZeroTier::World::Root, std::__1::allocatorZeroTier::World::Root >::assignZeroTier::World::Root*(ZeroTier::World::Root*, ZeroTier::World::Root*) in zt(Utilities.o)
std::__1::enable_if<(__is_cpp17_forward_iteratorZeroTier::InetAddress*::value) && (is_constructible<ZeroTier::InetAddress, std::__1::iterator_traitsZeroTier::InetAddress*::reference>::value), void>::type std::__1::vector<ZeroTier::InetAddress, std::__1::allocatorZeroTier::InetAddress >::assignZeroTier::InetAddress*(ZeroTier::InetAddress*, ZeroTier::InetAddress*) in zt(Utilities.o)
...
"___cxa_begin_catch", referenced from:
__runNodeService in zt(Controls.o)
___clang_call_terminate in zt(Controls.o)
ZeroTier::NodeService::run() in zt(NodeService.o)
ZeroTier::PhyZeroTier::NodeService*::poll(unsigned long) in zt(NodeService.o)
ZeroTier::PhyZeroTier::NodeService*::udpBind(sockaddr const*, void*, int) in zt(NodeService.o)
ZeroTier::PhyZeroTier::NodeService*::tcpListen(sockaddr const*, void*) in zt(NodeService.o)
ZeroTier::Node::Node(void*, void*, ZT_Node_Callbacks const*, long long) in zt(Node.o)
...
"___cxa_end_catch", referenced from:
__runNodeService in zt(Controls.o)
ZeroTier::NodeService::run() in zt(NodeService.o)
ZeroTier::PhyZeroTier::NodeService*::poll(unsigned long) in zt(NodeService.o)
ZeroTier::PhyZeroTier::NodeService*::udpBind(sockaddr const*, void*, int) in zt(NodeService.o)
ZeroTier::PhyZeroTier::NodeService*::tcpListen(sockaddr const*, void*) in zt(NodeService.o)
ZeroTier::Node::Node(void*, void*, ZT_Node_Callbacks const*, long long) in zt(Node.o)
ZeroTier::Node::processBackgroundTasks(void*, long long, long long volatile*) in zt(Node.o)
...
"operator new[](unsigned long)", referenced from:
ZeroTier::Identity::generate() in zt(Identity.o)
ZeroTier::Identity::locallyValidate() const in zt(Identity.o)
ZeroTier::Multicaster::send(void*, long long, ZeroTier::SharedPtrZeroTier::Network const&, ZeroTier::Address const&, ZeroTier::MulticastGroup const&, ZeroTier::MAC const&, unsigned int, void const*, unsigned int) in zt(Multicaster.o)
"std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >::rfind(char, unsigned long) const", referenced from:
ZeroTier::NodeService::run() in zt(NodeService.o)
"___gxx_personality_v0", referenced from:
ZeroTier::Mutex::~Mutex() in zt(Controls.o)
ZeroTier::init_subsystems() in zt(Controls.o)
_zts_init_from_storage in zt(Controls.o)
_zts_init_from_memory in zt(Controls.o)
_zts_init_set_event_handler in zt(Controls.o)
_zts_init_blacklist_if in zt(Controls.o)
_zts_init_set_roots in zt(Controls.o)
...
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)