Is anyone able to build grpc on windows with Visual Studio? I was following this guide https://github.com/grpc/grpc/blob/master/BUILDING.md. On Mac i'm just running ```make```, add the libraries and headers to my project, build it and voila. Everything works. On windows when i adding the libraries i'm getting tons of link errors when trying to build ``` >cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""void __cdecl AddDescriptors_google_2fprotobuf_2fwrappers_2eproto(void)" (?AddDescriptors_google_2fprotobuf_2fwrappers_2eproto@@YAXXZ)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""struct google::protobuf::internal::SCCInfo<0> scc_info_Empty_google_2fprotobuf_2fempty_2eproto" (?scc_info_Empty_google_2fprotobuf_2fempty_2eproto@@3U?$SCCInfo@$0A@@internal@protobuf@google@@A)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""void __cdecl AddDescriptors_google_2fprotobuf_2fempty_2eproto(void)" (?AddDescriptors_google_2fprotobuf_2fempty_2eproto@@YAXXZ)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static unsigned char * __cdecl google::protobuf::io::CodedOutputStream::WriteStringWithSizeToArray(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,unsigned char *)" (?WriteStringWithSizeToArray@CodedOutputStream@io@protobuf@google@@SAPAEABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAE@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""private: unsigned int __thiscall google::protobuf::io::CodedInputStream::ReadTagFallback(unsigned int)" (?ReadTagFallback@CodedInputStream@io@protobuf@google@@AAEII@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""private: struct std::pair<unsigned __int64,bool> __thiscall google::protobuf::io::CodedInputStream::ReadVarint64Fallback(void)" (?ReadVarint64Fallback@CodedInputStream@io@protobuf@google@@AAE?AU?$pair@_K_N@std@@XZ)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""private: int __thiscall google::protobuf::io::CodedInputStream::ReadVarintSizeAsIntFallback(void)" (?ReadVarintSizeAsIntFallback@CodedInputStream@io@protobuf@google@@AAEHXZ)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""private: __int64 __thiscall google::protobuf::io::CodedInputStream::ReadVarint32Fallback(unsigned int)" (?ReadVarint32Fallback@CodedInputStream@io@protobuf@google@@AAE_JI@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: bool __thiscall google::protobuf::io::CodedInputStream::DecrementRecursionDepthAndPopLimit(int)" (?DecrementRecursionDepthAndPopLimit@CodedInputStream@io@protobuf@google@@QAE_NH@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: struct std::pair<int,int> __thiscall google::protobuf::io::CodedInputStream::IncrementRecursionDepthAndPushLimit(int)" (?IncrementRecursionDepthAndPushLimit@CodedInputStream@io@protobuf@google@@QAE?AU?$pair@HH@std@@H@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""void __cdecl google::protobuf::internal::InitSCCImpl(struct google::protobuf::internal::SCCInfoBase *)" (?InitSCCImpl@internal@protobuf@google@@YAXPAUSCCInfoBase@123@@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""void __cdecl google::protobuf::internal::VerifyVersion(int,int,char const *)" (?VerifyVersion@internal@protobuf@google@@YAXHHPBD@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""void __cdecl google::protobuf::internal::AssignDescriptors(struct google::protobuf::internal::AssignDescriptorsTable *)" (?AssignDescriptors@internal@protobuf@google@@YAXPAUAssignDescriptorsTable@123@@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: void __thiscall google::protobuf::internal::LogFinisher::operator=(class google::protobuf::internal::LogMessage &)" (??4LogFinisher@internal@protobuf@google@@QAEXAAVLogMessage@123@@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: void __thiscall google::protobuf::internal::ArenaImpl::AddCleanup(void *,void (__cdecl*)(void *))" (?AddCleanup@ArenaImpl@internal@protobuf@google@@QAEXPAXP6AX0@Z@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: void * __thiscall google::protobuf::internal::ArenaImpl::AllocateAlignedAndAddCleanup(unsigned int,void (__cdecl*)(void *))" (?AllocateAlignedAndAddCleanup@ArenaImpl@internal@protobuf@google@@QAEPAXIP6AXPAX@Z@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: void * __thiscall google::protobuf::internal::ArenaImpl::AllocateAligned(unsigned int)" (?AllocateAligned@ArenaImpl@internal@protobuf@google@@QAEPAXI@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""class google::protobuf::internal::ExplicitlyConstructed<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > google::protobuf::internal::fixed_address_empty_string" (?fixed_address_empty_string@internal@protobuf@google@@3V?$ExplicitlyConstructed@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@123@A)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static unsigned int __cdecl google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(class google::protobuf::UnknownFieldSet const &)" (?ComputeUnknownFieldsSize@WireFormat@internal@protobuf@google@@SAIABVUnknownFieldSet@34@@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static unsigned char * __cdecl google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(class google::protobuf::UnknownFieldSet const &,unsigned char *)" (?SerializeUnknownFieldsToArray@WireFormat@internal@protobuf@google@@SAPAEABVUnknownFieldSet@34@PAE@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static void __cdecl google::protobuf::internal::WireFormat::SerializeUnknownFields(class google::protobuf::UnknownFieldSet const &,class google::protobuf::io::CodedOutputStream *)" (?SerializeUnknownFields@WireFormat@internal@protobuf@google@@SAXABVUnknownFieldSet@34@PAVCodedOutputStream@io@34@@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static bool __cdecl google::protobuf::internal::WireFormat::SkipField(class google::protobuf::io::CodedInputStream *,unsigned int,class google::protobuf::UnknownFieldSet *)" (?SkipField@WireFormat@internal@protobuf@google@@SA_NPAVCodedInputStream@io@34@IPAVUnknownFieldSet@34@@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""void __cdecl google::protobuf::internal::OnShutdownRun(void (__cdecl*)(void const *),void const *)" (?OnShutdownRun@internal@protobuf@google@@YAXP6AXPBX@Z0@Z)". 1>cms.pb.obj : error LNK2001: Nicht aufgelöstes externes Symbol ""public: static void __cdecl google::protobuf::internal::ReflectionOps::Merge( ... ... ... ```
It's really frustrating. I'm using the latest version 1.22. -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/651e306a-bc51-4fd5-a303-d08d013edf22%40googlegroups.com.
