Nicolas, I was able to work around the problem by simply switching to the 
master branch, looks like something is a bit off with the 1.0.0 tag release

John

On Sunday, August 21, 2016 at 3:04:27 PM UTC-4, John Coffey wrote:
>
> Nicolas, that was indeed the case when I switched from the 0_15_1 to the 
> v1.0.0 branch.  However today I changed to the 1.0.0 tag and the problems 
> are cropping up once more and this time despite clean builds I cannot seem 
> to resolve the linker issues.  I did a build from scratch and I get the 
> following missing symbol linker errors.  I would have thought that 
> grpc++.lib was the guilty library bit that does not look to be the case. 
>  Perhaps you can spot the problem.
>
> John
>
> 1>main.obj : warning LNK4075: ignoring '/EDITANDCONTINUE' due to 
> '/OPT:LBR' specification
> 1>ca.lib(CADaemon.obj) : error LNK2019: unresolved external symbol 
> "public: virtual __cdecl grpc::Server::~Server(void)" 
> (??1Server@grpc@@UEAA@XZ) referenced in function "public: virtual void * 
> __cdecl grpc::Server::`scalar deleting destructor'(unsigned int)" 
> (??_GServer@grpc@@UEAAPEAXI@Z)
> 1>grpc++.lib(server_builder.obj) : error LNK2001: unresolved external 
> symbol "public: virtual __cdecl grpc::Server::~Server(void)" 
> (??1Server@grpc@@UEAA@XZ)
> 1>ca.lib(CADaemon.obj) : error LNK2019: unresolved external symbol 
> "public: virtual void __cdecl grpc::Server::Wait(void)" 
> (?Wait@Server@grpc@@UEAAXXZ) referenced in function "private: void __cdecl 
> CADaemon::grpcService(class std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> > const &)" 
> (?grpcService@CADaemon@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
> symbol "private: __cdecl grpc::Server::Server(class 
> grpc::ThreadPoolInterface *,bool,int,class grpc::ChannelArguments *)" 
> (??0Server@grpc@@AEAA@PEAVThreadPoolInterface@1@_NHPEAVChannelArguments@1@@Z) 
> referenced in function "public: class std::unique_ptr<class 
> grpc::Server,struct std::default_delete<class grpc::Server> > __cdecl 
> grpc::ServerBuilder::BuildAndStart(void)" 
> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
> symbol "private: virtual bool __cdecl grpc::Server::RegisterService(class 
> std::basic_string<char,struct std::char_traits<char>,class 
> std::allocator<char> > const *,class grpc::Service *)" 
> (?RegisterService@Server@grpc@@EEAA_NPEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAVService@2@@Z)
>  
> referenced in function "public: class std::unique_ptr<class 
> grpc::Server,struct std::default_delete<class grpc::Server> > __cdecl 
> grpc::ServerBuilder::BuildAndStart(void)" 
> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
> symbol "private: virtual void __cdecl 
> grpc::Server::RegisterAsyncGenericService(class grpc::AsyncGenericService 
> *)" 
> (?RegisterAsyncGenericService@Server@grpc@@EEAAXPEAVAsyncGenericService@2@@Z) 
> referenced in function "public: class std::unique_ptr<class 
> grpc::Server,struct std::default_delete<class grpc::Server> > __cdecl 
> grpc::ServerBuilder::BuildAndStart(void)" 
> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
> symbol "private: virtual int __cdecl grpc::Server::AddListeningPort(class 
> std::basic_string<char,struct std::char_traits<char>,class 
> std::allocator<char> > const &,class grpc::ServerCredentials *)" 
> (?AddListeningPort@Server@grpc@@EEAAHAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAVServerCredentials@2@@Z)
>  
> referenced in function "public: class std::unique_ptr<class 
> grpc::Server,struct std::default_delete<class grpc::Server> > __cdecl 
> grpc::ServerBuilder::BuildAndStart(void)" 
> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
> symbol "private: virtual bool __cdecl grpc::Server::Start(class 
> grpc::ServerCompletionQueue * *,unsigned __int64)" 
> (?Start@Server@grpc@@EEAA_NPEAPEAVServerCompletionQueue@2@_K@Z) referenced 
> in function "public: class std::unique_ptr<class grpc::Server,struct 
> std::default_delete<class grpc::Server> > __cdecl 
> grpc::ServerBuilder::BuildAndStart(void)" 
> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
> symbol "private: class grpc::ServerInitializer * __cdecl 
> grpc::Server::initializer(void)" 
> (?initializer@Server@grpc@@AEAAPEAVServerInitializer@2@XZ) referenced in 
> function "public: class std::unique_ptr<class grpc::Server,struct 
> std::default_delete<class grpc::Server> > __cdecl 
> grpc::ServerBuilder::BuildAndStart(void)" 
> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
> 1>grpc++.lib(create_channel_internal.obj) : error LNK2019: unresolved 
> external symbol "public: virtual __cdecl grpc::Channel::~Channel(void)" 
> (??1Channel@grpc@@UEAA@XZ) referenced in function "public: virtual void * 
> __cdecl grpc::Channel::`scalar deleting destructor'(unsigned int)" 
> (??_GChannel@grpc@@UEAAPEAXI@Z)
> 1>grpc++.lib(create_channel_internal.obj) : error LNK2019: unresolved 
> external symbol "private: __cdecl grpc::Channel::Channel(class 
> std::basic_string<char,struct std::char_traits<char>,class 
> std::allocator<char> > const &,struct grpc_channel *)" 
> (??0Channel@grpc@@AEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAUgrpc_channel@@@Z)
>  
> referenced in function "class std::shared_ptr<class grpc::Channel> __cdecl 
> grpc::CreateChannelInternal(class std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> > const &,struct 
> grpc_channel *)" 
> (?CreateChannelInternal@grpc@@YA?AV?$shared_ptr@VChannel@grpc@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@PEAUgrpc_channel@@@Z)
> 1>C:\Users\johnc\main\dlmu\cadaemon-0339.1\win32\cadaemon\x64\Debug\cadaemon.exe
>  
> : fatal error LNK1120: 10 unresolved externals
>
>
>
> On Tuesday, July 12, 2016 at 7:02:45 PM UTC-4, Nicolas Noble wrote:
>>
>> Not really - these are fairly standard symbols, and shouldn't go missing. 
>> I can't help but notice that you are building from an existing build 
>> though. Did you, well, try cleaning all and rebuilding all ? If their 
>> signature changed between the builds, and your VS didn't pick up the change 
>> and rebuild the necessary parts, that'd do it.
>>
>> On Monday, July 11, 2016 at 12:47:33 PM UTC-7, John Coffey wrote:
>>>
>>> I'm getting the following linker errors recently (master branch) on 
>>> windows, I do not get these in release-0_15_1.  I wonder if anyone could 
>>> shed light on what the source of this error might be. I suspect that it has 
>>> something to do with the libraries that I am linking with 
>>> post  release-0_15_1 (I did not change these but I did notice that a new 
>>> grpc++reflection.lib was added.
>>>
>>> I am linking to the following grpc/protocol buffer libraries
>>>
>>> libprotobufd.lib
>>> gpr.lib
>>> grpc.lib
>>> grpc_unsecure.lib
>>> grpc++.lib
>>> grpc++_unsecure.lib
>>> z.lib
>>>
>>> Any ideas
>>>
>>> John
>>>
>>> These are the linker errors on in my client
>>>
>>> 1>  LINK : C:\main\dlmu\cacli-0339.1\win32\cacli\x64\Debug\cacli.exe not 
>>> found or not built by the last incremental link; performing full link
>>> 1>grpc++_unsecure.lib(insecure_credentials.obj) : error LNK2019: 
>>> unresolved external symbol "public: __cdecl 
>>> grpc::ChannelCredentials::ChannelCredentials(void)" 
>>> (??0ChannelCredentials@grpc@@QEAA@XZ) referenced in function "public: 
>>> __cdecl grpc::`anonymous 
>>> namespace'::InsecureChannelCredentialsImpl::InsecureChannelCredentialsImpl(void)"
>>>  
>>> (??0InsecureChannelCredentialsImpl@?A0x568c5687@grpc@@QEAA@XZ)
>>> 1>grpc++_unsecure.lib(insecure_credentials.obj) : error LNK2019: 
>>> unresolved external symbol "public: virtual __cdecl 
>>> grpc::ChannelCredentials::~ChannelCredentials(void)" 
>>> (??1ChannelCredentials@grpc@@UEAA@XZ) referenced in function "public: 
>>> virtual __cdecl grpc::`anonymous 
>>> namespace'::InsecureChannelCredentialsImpl::~InsecureChannelCredentialsImpl(void)"
>>>  
>>> (??1InsecureChannelCredentialsImpl@?A0x568c5687@grpc@@UEAA@XZ)
>>> 1>grpc++_unsecure.lib(create_channel_internal.obj) : error LNK2019: 
>>> unresolved external symbol "public: virtual __cdecl 
>>> grpc::Channel::~Channel(void)" (??1Channel@grpc@@UEAA@XZ) referenced in 
>>> function "public: virtual void * __cdecl grpc::Channel::`scalar deleting 
>>> destructor'(unsigned int)" (??_GChannel@grpc@@UEAAPEAXI@Z)
>>> 1>grpc++_unsecure.lib(create_channel_internal.obj) : error LNK2019: 
>>> unresolved external symbol "private: __cdecl grpc::Channel::Channel(class 
>>> std::basic_string<char,struct std::char_traits<char>,class 
>>> std::allocator<char> > const &,struct grpc_channel *)" 
>>> (??0Channel@grpc@@AEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAUgrpc_channel@@@Z)
>>>  
>>> referenced in function "class std::shared_ptr<class grpc::Channel> __cdecl 
>>> grpc::CreateChannelInternal(class std::basic_string<char,struct 
>>> std::char_traits<char>,class std::allocator<char> > const &,struct 
>>> grpc_channel *)" 
>>> (?CreateChannelInternal@grpc@@YA?AV?$shared_ptr@VChannel@grpc@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@PEAUgrpc_channel@@@Z)
>>> 1>C:\main\dlmu\cacli-0339.1\win32\cacli\x64\Debug\cacli.exe : fatal 
>>> error LNK1120: 4 unresolved externals
>>>
>>>
>>>
>>> These are the linker errors on in my server
>>>
>>> 1>------ Build started: Project: cadaemon, Configuration: Debug x64 
>>> ------
>>> 1>main.obj : warning LNK4075: ignoring '/EDITANDCONTINUE' due to 
>>> '/OPT:LBR' specification
>>> 1>ca.lib(CADaemon.obj) : error LNK2019: unresolved external symbol 
>>> "public: virtual __cdecl grpc::Server::~Server(void)" 
>>> (??1Server@grpc@@UEAA@XZ) referenced in function "public: virtual void * 
>>> __cdecl grpc::Server::`scalar deleting destructor'(unsigned int)" 
>>> (??_GServer@grpc@@UEAAPEAXI@Z)
>>> 1>grpc++.lib(server_builder.obj) : error LNK2001: unresolved external 
>>> symbol "public: virtual __cdecl grpc::Server::~Server(void)" 
>>> (??1Server@grpc@@UEAA@XZ)
>>> 1>ca.lib(CADaemon.obj) : error LNK2019: unresolved external symbol 
>>> "public: virtual void __cdecl grpc::Server::Wait(void)" 
>>> (?Wait@Server@grpc@@UEAAXXZ) referenced in function "private: void __cdecl 
>>> CADaemon::grpcService(class std::basic_string<char,struct 
>>> std::char_traits<char>,class std::allocator<char> > const &)" 
>>> (?grpcService@CADaemon@@AEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
>>> 1>grpc++.lib(insecure_credentials.obj) : error LNK2019: unresolved 
>>> external symbol "public: __cdecl 
>>> grpc::ChannelCredentials::ChannelCredentials(void)" 
>>> (??0ChannelCredentials@grpc@@QEAA@XZ) referenced in function "public: 
>>> __cdecl grpc::`anonymous 
>>> namespace'::InsecureChannelCredentialsImpl::InsecureChannelCredentialsImpl(void)"
>>>  
>>> (??0InsecureChannelCredentialsImpl@?A0x568c5687@grpc@@QEAA@XZ)
>>> 1>grpc++.lib(insecure_credentials.obj) : error LNK2019: unresolved 
>>> external symbol "public: virtual __cdecl 
>>> grpc::ChannelCredentials::~ChannelCredentials(void)" 
>>> (??1ChannelCredentials@grpc@@UEAA@XZ) referenced in function "public: 
>>> virtual __cdecl grpc::`anonymous 
>>> namespace'::InsecureChannelCredentialsImpl::~InsecureChannelCredentialsImpl(void)"
>>>  
>>> (??1InsecureChannelCredentialsImpl@?A0x568c5687@grpc@@UEAA@XZ)
>>> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
>>> symbol "private: __cdecl grpc::Server::Server(class 
>>> grpc::ThreadPoolInterface *,bool,int,class grpc::ChannelArguments *)" 
>>> (??0Server@grpc@@AEAA@PEAVThreadPoolInterface@1@_NHPEAVChannelArguments@1@@Z)
>>>  
>>> referenced in function "public: class std::unique_ptr<class 
>>> grpc::Server,struct std::default_delete<class grpc::Server> > __cdecl 
>>> grpc::ServerBuilder::BuildAndStart(void)" 
>>> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
>>> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
>>> symbol "private: virtual bool __cdecl grpc::Server::RegisterService(class 
>>> std::basic_string<char,struct std::char_traits<char>,class 
>>> std::allocator<char> > const *,class grpc::Service *)" 
>>> (?RegisterService@Server@grpc@@EEAA_NPEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAVService@2@@Z)
>>>  
>>> referenced in function "public: class std::unique_ptr<class 
>>> grpc::Server,struct std::default_delete<class grpc::Server> > __cdecl 
>>> grpc::ServerBuilder::BuildAndStart(void)" 
>>> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
>>> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
>>> symbol "private: virtual void __cdecl 
>>> grpc::Server::RegisterAsyncGenericService(class grpc::AsyncGenericService 
>>> *)" 
>>> (?RegisterAsyncGenericService@Server@grpc@@EEAAXPEAVAsyncGenericService@2@@Z)
>>>  
>>> referenced in function "public: class std::unique_ptr<class 
>>> grpc::Server,struct std::default_delete<class grpc::Server> > __cdecl 
>>> grpc::ServerBuilder::BuildAndStart(void)" 
>>> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
>>> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
>>> symbol "private: virtual int __cdecl grpc::Server::AddListeningPort(class 
>>> std::basic_string<char,struct std::char_traits<char>,class 
>>> std::allocator<char> > const &,class grpc::ServerCredentials *)" 
>>> (?AddListeningPort@Server@grpc@@EEAAHAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAVServerCredentials@2@@Z)
>>>  
>>> referenced in function "public: class std::unique_ptr<class 
>>> grpc::Server,struct std::default_delete<class grpc::Server> > __cdecl 
>>> grpc::ServerBuilder::BuildAndStart(void)" 
>>> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
>>> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
>>> symbol "private: virtual bool __cdecl grpc::Server::Start(class 
>>> grpc::ServerCompletionQueue * *,unsigned __int64)" 
>>> (?Start@Server@grpc@@EEAA_NPEAPEAVServerCompletionQueue@2@_K@Z) referenced 
>>> in function "public: class std::unique_ptr<class grpc::Server,struct 
>>> std::default_delete<class grpc::Server> > __cdecl 
>>> grpc::ServerBuilder::BuildAndStart(void)" 
>>> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
>>> 1>grpc++.lib(server_builder.obj) : error LNK2019: unresolved external 
>>> symbol "private: class grpc::ServerInitializer * __cdecl 
>>> grpc::Server::initializer(void)" 
>>> (?initializer@Server@grpc@@AEAAPEAVServerInitializer@2@XZ) referenced in 
>>> function "public: class std::unique_ptr<class grpc::Server,struct 
>>> std::default_delete<class grpc::Server> > __cdecl 
>>> grpc::ServerBuilder::BuildAndStart(void)" 
>>> (?BuildAndStart@ServerBuilder@grpc@@QEAA?AV?$unique_ptr@VServer@grpc@@U?$default_delete@VServer@grpc@@@std@@@std@@XZ)
>>> 1>grpc++.lib(create_channel_internal.obj) : error LNK2019: unresolved 
>>> external symbol "public: virtual __cdecl grpc::Channel::~Channel(void)" 
>>> (??1Channel@grpc@@UEAA@XZ) referenced in function "public: virtual void * 
>>> __cdecl grpc::Channel::`scalar deleting destructor'(unsigned int)" 
>>> (??_GChannel@grpc@@UEAAPEAXI@Z)
>>> 1>grpc++.lib(create_channel_internal.obj) : error LNK2019: unresolved 
>>> external symbol "private: __cdecl grpc::Channel::Channel(class 
>>> std::basic_string<char,struct std::char_traits<char>,class 
>>> std::allocator<char> > const &,struct grpc_channel *)" 
>>> (??0Channel@grpc@@AEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PEAUgrpc_channel@@@Z)
>>>  
>>> referenced in function "class std::shared_ptr<class grpc::Channel> __cdecl 
>>> grpc::CreateChannelInternal(class std::basic_string<char,struct 
>>> std::char_traits<char>,class std::allocator<char> > const &,struct 
>>> grpc_channel *)" 
>>> (?CreateChannelInternal@grpc@@YA?AV?$shared_ptr@VChannel@grpc@@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@PEAUgrpc_channel@@@Z)
>>> 1>C:\main\dlmu\cadaemon-0339.1\win32\cadaemon\x64\Debug\cadaemon.exe : 
>>> fatal error LNK1120: 12 unresolved externals
>>> ========== Build: 0 succeeded, 1 failed, 3 up-to-date, 0 skipped 
>>> ==========
>>>
>>>

-- 
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 post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/756d195c-ea89-4cf7-a8b7-76daa9bcb09c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to