gospdyquic icon indicating copy to clipboard operation
gospdyquic copied to clipboard

Not able to build example server on Mac

Open jcpathena opened this issue 10 years ago • 1 comments

Hi,

On Mac OS X (10.10) I could build libquic and libgoquic successfully but building the example server.go gave me issues. I noticed that in the instructions the directory path for server.go misses "src", so I fixed it:

CGO_CFLAGS="-I$GOPATH/src/github.com/devsisters/goquic/libquic/boringssl/include" CGO_LDFLAGS="-L$GOPATH/src/github.com/devsisters/goquic/lib/darwin_amd64" go build $GOPATH/src/github.com/devsisters/gospdyquic/example/server.go

However build failed and reported a lot of undefined symbol errors and some warnings.:

CGO_CFLAGS="-I$GOPATH/src/github.com/devsisters/goquic/libquic/boringssl/include" CGO_LDFLAGS="-L$GOPATH/src/github.com/devsisters/goquic/lib/darwin_amd64" go build $GOPATH/src/github.com/devsisters/gospdyquic/example/server.go

github.com/devsisters/goquic

In file included from ../goquic/client_wrapper.go:8: ../goquic/src/adaptor_client.h:18:14: warning: redefinition of typedef 'IPEndPoint' is a C11 feature [-Wtypedef-redefinition] ../goquic/src/adaptor.h:26:14: note: previous definition is here In file included from ../goquic/client_wrapper.go:8: ../goquic/src/adaptor_client.h:21:14: warning: redefinition of typedef 'MapStrStr' is a C11 feature [-Wtypedef-redefinition] ../goquic/src/adaptor.h:29:14: note: previous definition is here In file included from ../goquic/client_wrapper.go:8: ../goquic/src/adaptor_client.h:22:14: warning: redefinition of typedef 'QuicEncryptedPacket' is a C11 feature [-Wtypedef-redefinition] ../goquic/src/adaptor.h:24:14: note: previous definition is here

github.com/devsisters/goquic

../goquic/go_functions.c:23:1: warning: control reaches end of non-void function [-Wreturn-type]

github.com/devsisters/goquic

Undefined symbols for architecture x86_64: "net::IPEndPoint::IPEndPoint(std::vector<unsigned char, std::allocator > const&, unsigned short)", referenced from: quic_dispatcher_process_packet in libgoquic.a(adaptor.o) create_go_quic_client_session_and_initialize in libgoquic.a(adaptor_client.o) go_quic_client_session_process_packet in libgoquic.a(adaptor_client.o) "net::QuicFramer::QuicFramer(std::vector<net::QuicVersion, std::allocatornet::QuicVersion > const&, net::QuicTime, net::Perspective)", referenced from: net::GoQuicDispatcher::GoQuicDispatcher(net::QuicConfig const&, net::QuicCryptoServerConfig const&, std::vector<net::QuicVersion, std::allocatornet::QuicVersion > const&, net::GoQuicDispatcher::PacketWriterFactory, net::QuicConnectionHelperInterface, void) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::GoQuicDispatcher(net::QuicConfig const&, net::QuicCryptoServerConfig const&, std::vector<net::QuicVersion, std::allocatornet::QuicVersion > const&, net::GoQuicDispatcher::PacketWriterFactory_, net::QuicConnectionHelperInterface_, void_) in libgoquic.a(go_quic_dispatcher.o) "net::QuicSession::OnStreamFrames(std::vector<net::QuicStreamFrame, std::allocatornet::QuicStreamFrame > const&)", referenced from: vtable for net::GoQuicClientSession in libgoquic.a(go_quic_client_session.o) vtable for net::GoQuicServerSession in libgoquic.a(go_quic_server_session.o) "net::QuicSession::OnBlockedFrames(std::vector<net::QuicBlockedFrame, std::allocatornet::QuicBlockedFrame > const&)", referenced from: vtable for net::GoQuicClientSession in libgoquic.a(go_quic_client_session.o) vtable for net::GoQuicServerSession in libgoquic.a(go_quic_server_session.o) "net::QuicSession::OnWindowUpdateFrames(std::vector<net::QuicWindowUpdateFrame, std::allocatornet::QuicWindowUpdateFrame > const&)", referenced from: vtable for net::GoQuicClientSession in libgoquic.a(go_quic_client_session.o) vtable for net::GoQuicServerSession in libgoquic.a(go_quic_server_session.o) "net::QuicServerId::QuicServerId(std::string const&, unsigned short, bool)", referenced from: create_go_quic_client_session_and_initialize in libgoquic.a(adaptor_client.o) "net::QuicConnection::QuicConnection(unsigned long long, net::IPEndPoint, net::QuicConnectionHelperInterface, net::QuicConnection::PacketWriterFactory const&, bool, net::Perspective, bool, std::vector<net::QuicVersion, std::allocatornet::QuicVersion > const&)", referenced from: create_go_quic_client_session_and_initialize in libgoquic.a(adaptor_client.o) net::GoQuicDispatcher::CreateQuicConnection(unsigned long long, net::IPEndPoint const&, net::IPEndPoint const&) in libgoquic.a(go_quic_dispatcher.o) "net::QuicDataStream::WriteHeaders(std::map<std::string, std::string, std::lessstd::string, std::allocator<std::pair<std::string const, std::string> > > const&, bool, net::QuicAckNotifier::DelegateInterface)", referenced from: vtable for GoQuicSpdyServerStreamGoWrapper in libgoquic.a(go_quic_spdy_server_stream_go_wrapper.o) vtable for net::GoQuicReliableClientStream in libgoquic.a(go_quic_reliable_client_stream.o) "net::QuicDataStream::OnStreamHeaders(base::BasicStringPiecestd::string)", referenced from: vtable for GoQuicSpdyServerStreamGoWrapper in libgoquic.a(go_quic_spdy_server_stream_go_wrapper.o) vtable for net::GoQuicReliableClientStream in libgoquic.a(go_quic_reliable_client_stream.o) "net::QuicSpdySession::OnStreamHeaders(unsigned int, base::BasicStringPiecestd::string)", referenced from: vtable for net::GoQuicClientSession in libgoquic.a(go_quic_client_session.o) vtable for net::GoQuicServerSession in libgoquic.a(go_quic_server_session.o) "net::ReliableQuicStream::WriteOrBufferData(base::BasicStringPiecestd::string, bool, net::QuicAckNotifier::DelegateInterface*)", referenced from: GoQuicSpdyServerStreamGoWrapper::WriteOrBufferData_(base::BasicStringPiecestd::string, bool, net::QuicAckNotifier::DelegateInterface_) in libgoquic.a(go_quic_spdy_server_stream_go_wrapper.o) net::GoQuicReliableClientStream::WriteOrBufferData_(base::BasicStringPiecestd::string, bool, net::QuicAckNotifier::DelegateInterface_) in libgoquic.a(go_quic_reliable_client_stream.o) "net::ReliableQuicStream::CloseConnectionWithDetails(net::QuicErrorCode, std::string const&)", referenced from: vtable for GoQuicSpdyServerStreamGoWrapper in libgoquic.a(go_quic_spdy_server_stream_go_wrapper.o) vtable for net::GoQuicReliableClientStream in libgoquic.a(go_quic_reliable_client_stream.o) "net::QuicCryptoServerConfig::QuicCryptoServerConfig(base::BasicStringPiecestd::string, net::QuicRandom_)", referenced from: create_quic_dispatcher in libgoquic.a(adaptor.o) "net::IPAddressToPackedString(std::vector<unsigned char, std::allocator > const&)", referenced from: GoProofSource::GetProof(std::vector<unsigned char, std::allocator > const&, std::string const&, std::string const&, bool, std::vector<std::string, std::allocatorstd::string > const_, std::string_) in libgoquic.a(go_proof_source.o) net::GoQuicClientPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_client_packet_writer.o) net::GoQuicServerPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_server_packet_writer.o) "base::SparseHistogram::FactoryGet(std::string const&, int)", referenced from: net::GoQuicClientPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_client_packet_writer.o) net::GoQuicServerPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_server_packet_writer.o) "base::BasicStringPiecestd::string::BasicStringPiece(char const_)", referenced from: create_quic_dispatcher in libgoquic.a(adaptor.o) "base::BasicStringPiecestd::string::BasicStringPiece(char const, unsigned long)", referenced from: quic_spdy_server_stream_write_or_buffer_data in libgoquic.a(adaptor.o) quic_reliable_client_stream_write_or_buffer_data in libgoquic.a(adaptor_client.o) "logging::LogMessage::LogMessage(char const, int, int, std::string)", referenced from: net::GoQuicServerPacketWriter::OnWriteComplete(int) in libgoquic.a(go_quic_server_packet_writer.o) "base::BasicStringPiecestd::string::as_string() const", referenced from: GoEphemeralKeySource::CalculateForwardSecureKey(net::KeyExchange const_, net::QuicRandom_, net::QuicTime, base::BasicStringPiecestd::string, std::string_) in libgoquic.a(go_ephemeral_key_source.o) "std::string::size() const", referenced from: net::GoQuicClientPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_client_packet_writer.o) net::GoQuicServerPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_server_packet_writer.o) "std::string::c_str() const", referenced from: GoProofSource::GetProof(std::vector<unsigned char, std::allocator > const&, std::string const&, std::string const&, bool, std::vector<std::string, std::allocatorstd::string > const__, std::string_) in libgoquic.a(go_proof_source.o) net::GoQuicClientPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_client_packet_writer.o) net::GoQuicServerPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_server_packet_writer.o) "std::string::empty() const", referenced from: net::GoQuicServerSession::OnCongestionWindowChange(net::QuicTime) in libgoquic.a(go_quic_server_session.o) "std::string::length() const", referenced from: GoProofSource::GetProof(std::vector<unsigned char, std::allocator > const&, std::string const&, std::string const&, bool, std::vector<std::string, std::allocatorstd::string > const**, std::string_) in libgoquic.a(go_proof_source.o) "std::string::compare(std::string const&) const", referenced from: bool std::operator<<char, std::char_traits, std::allocator >(std::basic_string<char, std::char_traits, std::allocator > const&, std::basic_string<char, std::char_traits, std::allocator > const&) in libgoquic.a(adaptor.o) bool std::operator<<char, std::char_traits, std::allocator >(std::basic_string<char, std::char_traits, std::allocator > const&, std::basic_string<char, std::char_traits, std::allocator > const&) in libgoquic.a(go_proof_source.o) "std::basic_ostringstream<char, std::char_traits, std::allocator >::str() const", referenced from: std::string_ logging::MakeCheckOpString<int, net::Error>(int const&, net::Error const&, char const*) in libgoquic.a(go_quic_server_packet_writer.o) "std::allocator::allocator()", referenced from: insert_map in libgoquic.a(adaptor.o) go_quic_client_session_connection_send_connection_close_packet in libgoquic.a(adaptor_client.o) GoProofSource::GetProof(std::vector<unsigned char, std::allocator > const&, std::string const&, std::string const&, bool, std::vector<std::string, std::allocatorstd::string > const**, std::string) in libgoquic.a(go_proof_source.o) net::GoQuicClientPacketWriter::WritePacket(char const, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_client_packet_writer.o) net::GoQuicServerPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_server_packet_writer.o) "std::allocator::~allocator()", referenced from: insert_map in libgoquic.a(adaptor.o) go_quic_client_session_connection_send_connection_close_packet in libgoquic.a(adaptor_client.o) GoProofSource::GetProof(std::vector<unsigned char, std::allocator > const&, std::string const&, std::string const&, bool, std::vector<std::string, std::allocatorstd::string > const, std::string_) in libgoquic.a(go_proof_source.o) net::GoQuicClientPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_client_packet_writer.o) net::GoQuicServerPacketWriter::WritePacket(char const_, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_server_packet_writer.o) "std::ostream::operator<<(int)", referenced from: std::string* logging::MakeCheckOpString<int, net::Error>(int const&, net::Error const&, char const_) in libgoquic.a(go_quic_server_packet_writer.o) "std::ostream::operator<<(unsigned int)", referenced from: GoQuicSpdyServerStreamGoWrapper::ProcessData(char const_, unsigned int) in libgoquic.a(go_quic_spdy_server_stream_go_wrapper.o) net::GoQuicServerSession::ShouldCreateIncomingDynamicStream(unsigned int) in libgoquic.a(go_quic_server_session.o) "std::ostream::operator<<(unsigned long)", referenced from: net::GoQuicClientSession::CreateOutgoingDynamicStream() in libgoquic.a(go_quic_client_session.o) net::GoQuicServerSession::ShouldCreateIncomingDynamicStream(unsigned int) in libgoquic.a(go_quic_server_session.o) "std::ostream::operator<<(long long)", referenced from: net::GoQuicServerSession::OnCongestionWindowChange(net::QuicTime) in libgoquic.a(go_quic_server_session.o) "std::ostream::operator<<(unsigned long long)", referenced from: net::GoQuicDispatcher::OnUnauthenticatedPublicHeader(net::QuicPacketPublicHeader const&) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::OnConnectionClosed(unsigned long long, net::QuicErrorCode) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::OnConnectionAddedToTimeWaitList(unsigned long long) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::OnConnectionRemovedFromTimeWaitList(unsigned long long) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::QuicFramerVisitor::OnProtocolVersionMismatch(net::QuicVersion) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicTimeWaitListManager::ProcessPacket(net::IPEndPoint const&, net::IPEndPoint const&, unsigned long long, unsigned long long, net::QuicEncryptedPacket const&) in libgoquic.a(go_quic_time_wait_list_manager.o) "std::string::assign(std::string const&)", referenced from: net::CachedNetworkParameters::set_serving_region(std::string const&) in libgoquic.a(go_quic_server_session.o) "std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string&&)", referenced from: std::pair<std::string, std::string>::pair<std::string, std::string, void>(std::string&&, std::string&&) in libgoquic.a(adaptor.o) std::pair<std::string const, std::string>::pair<std::string, std::string, void>(std::pair<std::string, std::string>&&) in libgoquic.a(adaptor.o) ZN9__gnu_cxx13new_allocatorISsE9constructISsISsEEEvPT_DpOT0 in libgoquic.a(go_proof_source.o) ZSt10_ConstructISsISsEEvPT_DpOT0 in libgoquic.a(go_proof_source.o) "std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const, std::allocator const&)", referenced from: go_quic_client_session_connection_send_connection_close_packet in libgoquic.a(adaptor_client.o) net::GoQuicClientPacketWriter::WritePacket(char const, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_client_packet_writer.o) net::GoQuicServerPacketWriter::WritePacket(char const, unsigned long, std::vector<unsigned char, std::allocator > const&, net::IPEndPoint const&) in libgoquic.a(go_quic_server_packet_writer.o) "std::basic_string<char, std::char_traits, std::allocator >::basic_string(char const_, unsigned long, std::allocator const&)", referenced from: insert_map in libgoquic.a(adaptor.o) GoProofSource::GetProof(std::vector<unsigned char, std::allocator > const&, std::string const&, std::string const&, bool, std::vector<std::string, std::allocatorstd::string > const*, std::string_) in libgoquic.a(go_proof_source.o) "std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&)", referenced from: ZNSt4pairIKSsPSt6vectorISsSaISsEEEC1IIRS0_EILm0EEIEIEEERSt5tupleIIDpT_EERS8_IIDpT1_EESt12_Index_tupleIIXspT0_EEESH_IIXspT2_EEE in libgoquic.a(go_proof_source.o) "std::basic_string<char, std::char_traits, std::allocator >::basic_string()", referenced from: create_go_quic_client_session_and_initialize in libgoquic.a(adaptor_client.o) ZSt10_ConstructISsIEEvPT_DpOT0 in libgoquic.a(go_proof_source.o) GoEphemeralKeySource::CalculateForwardSecureKey(net::KeyExchange const, net::QuicRandom, net::QuicTime, base::BasicStringPiecestd::string, std::string) in libgoquic.a(go_ephemeral_key_source.o) net::GoQuicServerSession::GoQuicServerSession(net::QuicConfig const&, net::QuicConnection, net::GoQuicServerSessionVisitor_) in libgoquic.a(go_quic_server_session.o) net::GoQuicServerSession::GoQuicServerSession(net::QuicConfig const&, net::QuicConnection_, net::GoQuicServerSessionVisitor_) in libgoquic.a(go_quic_server_session.o) net::CachedNetworkParameters::set_serving_region(std::string const&) in libgoquic.a(go_quic_server_session.o) "std::basic_string<char, std::char_traits, std::allocator >::~basic_string()", referenced from: insert_map in libgoquic.a(adaptor.o) net::QuicCryptoServerConfig::ConfigOptions::~ConfigOptions() in libgoquic.a(adaptor.o) std::pair<std::string, std::string>::~pair() in libgoquic.a(adaptor.o) std::pair<std::string const, std::string>::~pair() in libgoquic.a(adaptor.o) create_go_quic_client_session_and_initialize in libgoquic.a(adaptor_client.o) go_quic_client_session_connection_send_connection_close_packet in libgoquic.a(adaptor_client.o) GoProofSource::GetProof(std::vector<unsigned char, std::allocator > const&, std::string const&, std::string const&, bool, std::vector<std::string, std::allocatorstd::string > const, std::string) in libgoquic.a(go_proof_source.o) ... "std::string::operator=(std::string&&)", referenced from: GoEphemeralKeySource::CalculateForwardSecureKey(net::KeyExchange const_, net::QuicRandom_, net::QuicTime, base::BasicStringPiecestd::string, std::string_) in libgoquic.a(go_ephemeral_key_source.o) "std::string::operator=(char const_)", referenced from: GoProofSource::GoProofSource(void_) in libgoquic.a(go_proof_source.o) GoProofSource::GoProofSource(void_) in libgoquic.a(go_proof_source.o) "std::string::operator=(std::string const&)", referenced from: GoProofSource::GetProof(std::vector<unsigned char, std::allocator > const&, std::string const&, std::string const&, bool, std::vector<std::string, std::allocatorstd::string > const*, std::string) in libgoquic.a(go_proof_source.o) "std::basic_ostringstream<char, std::char_traits, std::allocator >::basic_ostringstream(std::Ios_Openmode)", referenced from: std::string* logging::MakeCheckOpString<int, net::Error>(int const&, net::Error const&, char const) in libgoquic.a(go_quic_server_packet_writer.o) "std::basic_ostringstream<char, std::char_traits, std::allocator >::~basic_ostringstream()", referenced from: std::string_ logging::MakeCheckOpString<int, net::Error>(int const&, net::Error const&, char const_) in libgoquic.a(go_quic_server_packet_writer.o) "std::__detail::_List_node_base::_M_hook(std::__detail::List_node_base)", referenced from: _ZNSt4listIPN3net11QuicSessionESaIS2_EE9_M_insertIIRKS2_EEEvSt14_List_iteratorIS2_EDpOT in libgoquic.a(go_quic_dispatcher.o) _ZNSt4listISt4pairIPN3net26QuicBlockedWriterInterfaceEbESaIS4_EE9_M_insertIIRKS4_EEEvSt14_List_iteratorIS4_EDpOT in libgoquic.a(go_quic_dispatcher.o) _ZNSt4listISt4pairIyN3net25GoQuicTimeWaitListManager16ConnectionIdDataEESaIS4_EE9_M_insertIIRKS4_EEEvSt14_List_iteratorIS4_EDpOT in libgoquic.a(go_quic_time_wait_list_manager.o) "std::__detail::_List_node_base::_M_unhook()", referenced from: std::list<std::pair<net::QuicBlockedWriterInterface*, bool>, std::allocator<std::pair<net::QuicBlockedWriterInterface*, bool> > >::_M_erase(std::_List_iterator<std::pair<net::QuicBlockedWriterInterface*, bool> >) in libgoquic.a(go_quic_dispatcher.o) std::list<std::pair<unsigned long long, net::GoQuicTimeWaitListManager::ConnectionIdData>, std::allocator<std::pair<unsigned long long, net::GoQuicTimeWaitListManager::ConnectionIdData> > >::_M_erase(std::List_iterator<std::pair<unsigned long long, net::GoQuicTimeWaitListManager::ConnectionIdData> >) in libgoquic.a(go_quic_time_wait_list_manager.o) "std::ios_base::Init::Init()", referenced from: __static_initialization_and_destruction_0(int, int) in libgoquic.a(adaptor.o) __static_initialization_and_destruction_0(int, int) in libgoquic.a(go_quic_connection_helper.o) "std::ios_base::Init::~Init()", referenced from: __static_initialization_and_destruction_0(int, int) in libgoquic.a(adaptor.o) __static_initialization_and_destruction_0(int, int) in libgoquic.a(go_quic_connection_helper.o) "std::Rb_tree_decrement(std::Rb_tree_node_base)", referenced from: std::Rb_tree_iterator<std::pair<std::string const, std::string> >::operator--() in libgoquic.a(adaptor.o) std::Rb_tree_iterator<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >> >::operator--() in libgoquic.a(go_proof_source.o) "std::Rb_tree_increment(std::Rb_tree_node_base)", referenced from: std::Rb_tree_iterator<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >> >::operator++() in libgoquic.a(go_proof_source.o) "std::_throw_length_error(char const)", referenced from: std::vector<net::QuicVersion, std::allocatornet::QuicVersion >::M_check_len(unsigned long, char const) const in libgoquic.a(adaptor_client.o) std::vector<std::string, std::allocatorstd::string >::M_check_len(unsigned long, char const) const in libgoquic.a(go_proof_source.o) std::vector<__gnu_cxx::Hashtable_node<std::pair<unsigned long long const, net::QuicSession> >, std::allocator<__gnu_cxx::Hashtable_node<std::pair<unsigned long long const, net::QuicSession> >> >::reserve(unsigned long) in libgoquic.a(go_quic_dispatcher.o) std::vector<__gnu_cxx::Hashtable_node<std::pair<net::QuicBlockedWriterInterface const, std::List_iterator<std::pair<net::QuicBlockedWriterInterface*, bool> > > >, std::allocator<__gnu_cxx::Hashtable_node<std::pair<net::QuicBlockedWriterInterface const, std::List_iterator<std::pair<net::QuicBlockedWriterInterface*, bool> > > >> >::reserve(unsigned long) in libgoquic.a(go_quic_dispatcher.o) std::vector<__gnu_cxx::Hashtable_node<std::pair<unsigned long long const, net::QuicSession> >, std::allocator<__gnu_cxx::Hashtable_node<std::pair<unsigned long long const, net::QuicSession> >> >::M_check_len(unsigned long, char const) const in libgoquic.a(go_quic_dispatcher.o) std::vector<__gnu_cxx::_Hashtable_node<std::pair<net::QuicBlockedWriterInterface* const, std::List_iterator<std::pair<net::QuicBlockedWriterInterface*, bool> > > >, std::allocator<__gnu_cxx::Hashtable_node<std::pair<net::QuicBlockedWriterInterface const, std::List_iterator<std::pair<net::QuicBlockedWriterInterface*, bool> > > >> >::M_check_len(unsigned long, char const) const in libgoquic.a(go_quic_dispatcher.o) std::vector<__gnu_cxx::_Hashtable_node<std::pair<unsigned long long const, std::List_iterator<std::pair<unsigned long long, net::GoQuicTimeWaitListManager::ConnectionIdData> > > >, std::allocator<__gnu_cxx::_Hashtable_node<std::pair<unsigned long long const, std::List_iterator<std::pair<unsigned long long, net::GoQuicTimeWaitListManager::ConnectionIdData> > > >> >::reserve(unsigned long) in libgoquic.a(go_quic_time_wait_list_manager.o) ... "std::_Rb_tree_rebalance_for_erase(std::Rb_tree_node_base, std::Rb_tree_node_base&)", referenced from: std::Rb_tree<std::string, std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >>, std::Select1st<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >> >, std::lessstd::string, std::allocator<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >> > >::_M_erase_aux(std::Rb_tree_const_iterator<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >> >) in libgoquic.a(go_proof_source.o) "std::Rb_tree_insert_and_rebalance(bool, std::Rb_tree_node_base, std::Rb_tree_node_base*, std::Rb_tree_node_base&)", referenced from: std::Rb_tree_iterator<std::pair<std::string const, std::string> > std::Rb_tree<std::string, std::pair<std::string const, std::string>, std::Select1st<std::pair<std::string const, std::string> >, std::lessstd::string, std::allocator<std::pair<std::string const, std::string> > >::M_insert<std::pair<std::string, std::string> >(std::Rb_tree_node_base, std::Rb_tree_node_base, std::pair<std::string, std::string>&&) in libgoquic.a(adaptor.o) std::Rb_tree<std::string, std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >>, std::Select1st<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >> >, std::lessstd::string, std::allocator<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >> > >::M_insert_node(std::Rb_tree_node_base, std::Rb_tree_node_base, std::Rb_tree_node<std::pair<std::string const, std::vector<std::string, std::allocatorstd::string >> >) in libgoquic.a(go_proof_source.o) "std::basic_ostream<char, std::char_traits >& std::operator<<std::char_traits(std::basic_ostream<char, std::char_traits >&, char const)", referenced from: GoQuicSpdyServerStreamGoWrapper::ProcessData(char const, unsigned int) in libgoquic.a(go_quic_spdy_server_stream_go_wrapper.o) net::GoQuicDispatcher::Initialize(net::GoQuicServerPacketWriter) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::OnUnauthenticatedPublicHeader(net::QuicPacketPublicHeader const&) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::OnUnauthenticatedHeader(net::QuicPacketHeader const&) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::Shutdown() in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::OnConnectionClosed(unsigned long long, net::QuicErrorCode) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicDispatcher::OnWriteBlocked(net::QuicBlockedWriterInterface) in libgoquic.a(go_quic_dispatcher.o) ... "std::basic_ostream<char, std::char_traits >& std::operator<<<char, std::char_traits, std::allocator >(std::basic_ostream<char, std::char_traits >&, std::basic_string<char, std::char_traits, std::allocator > const&)", referenced from: net::GoQuicDispatcher::OnConnectionClosed(unsigned long long, net::QuicErrorCode) in libgoquic.a(go_quic_dispatcher.o) net::GoQuicTimeWaitListManager::WriteToWire(net::GoQuicTimeWaitListManager::QueuedPacket) in libgoquic.a(go_quic_time_wait_list_manager.o) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

jcpathena avatar Jun 29 '15 07:06 jcpathena

Can you try it again? The darwin static libs were old versions. I updated it. :)

serialx avatar Jun 29 '15 08:06 serialx