Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

求助!!!使用VS2019生成SimpleAmqpClient库时,无法解析的外部符号。 #306

Open
WangxuhuiL opened this issue May 10, 2022 · 2 comments

Comments

@WangxuhuiL
Copy link

1>AmqpException.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_method_name,函数 "public: static void cdecl AmqpClient::AmqpException::Throw(struct amqp_channel_close_t const &)" (?Throw@AmqpException@AmqpClient@@SAXAEBUamqp_channel_close_t@@@z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_new_connection,函数 "private: static class AmqpClient::Channel::ChannelImpl * __cdecl AmqpClient::Channel::OpenChannel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,bool)" (?OpenChannel@Channel@AmqpClient@@CAPEAVChannelImpl@12@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@H000H_N@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_get_sockfd,函数 "public: int __cdecl AmqpClient::Channel::GetSocketFD(void)const " (?GetSocketFD@Channel@AmqpClient@@QEBAHXZ) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_destroy_connection,函数 "public: virtual __cdecl AmqpClient::Channel::~Channel(void)" (??1Channel@AmqpClient@@UEAA@XZ) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_send_method,函数 "public: void __cdecl AmqpClient::Channel::BasicCancel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &)" (?BasicCancel@Channel@AmqpClient@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@@z) 中引用了该符号
1>ChannelImpl.obj : error LNK2001: 无法解析的外部符号 __imp_amqp_send_method
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_basic_publish,函数 "public: void __cdecl AmqpClient::Channel::BasicPublish(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class boost::shared_ptr,bool,bool)" (?BasicPublish@Channel@AmqpClient@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@0V?$shared_ptr@VBasicMessage@AmqpClient@@@boost@@_N2@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_connection_close,函数 "public: virtual __cdecl AmqpClient::Channel::~Channel(void)" (??1Channel@AmqpClient@@UEAA@XZ) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_basic_ack,函数 "public: void __cdecl AmqpClient::Channel::BasicAck(struct AmqpClient::Envelope::DeliveryInfo const &,bool)" (?BasicAck@Channel@AmqpClient@@QEAAXAEBUDeliveryInfo@Envelope@2@_N@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_default_connection_info,函数 "public: static struct AmqpClient::Channel::OpenOpts __cdecl AmqpClient::Channel::OpenOpts::FromUri(class std::basic_string<char,struct std::char_traits,class std::allocator > const &)" (?FromUri@OpenOpts@Channel@AmqpClient@@sa?AU123@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@@z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_parse_url,函数 "public: static struct AmqpClient::Channel::OpenOpts __cdecl AmqpClient::Channel::OpenOpts::FromUri(class std::basic_string<char,struct std::char_traits,class std::allocator > const &)" (?FromUri@OpenOpts@Channel@AmqpClient@@sa?AU123@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@@z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_socket_open,函数 "private: static class AmqpClient::Channel::ChannelImpl * __cdecl AmqpClient::Channel::OpenChannel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,bool)" (?OpenChannel@Channel@AmqpClient@@CAPEAVChannelImpl@12@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@H000H_N@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_tcp_socket_new,函数 "private: static class AmqpClient::Channel::ChannelImpl * __cdecl AmqpClient::Channel::OpenChannel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,bool)" (?OpenChannel@Channel@AmqpClient@@CAPEAVChannelImpl@12@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@H000H_N@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_ssl_socket_new,函数 "private: static class AmqpClient::Channel::ChannelImpl * __cdecl AmqpClient::Channel::OpenSecureChannel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,struct AmqpClient::Channel::OpenOpts::TLSParams const &,bool)" (?OpenSecureChannel@Channel@AmqpClient@@CAPEAVChannelImpl@12@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@H000HAEBUTLSParams@OpenOpts@12@_N@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_ssl_socket_set_cacert,函数 "private: static class AmqpClient::Channel::ChannelImpl * __cdecl AmqpClient::Channel::OpenSecureChannel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,struct AmqpClient::Channel::OpenOpts::TLSParams const &,bool)" (?OpenSecureChannel@Channel@AmqpClient@@CAPEAVChannelImpl@12@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@H000HAEBUTLSParams@OpenOpts@12@_N@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_ssl_socket_set_key,函数 "private: static class AmqpClient::Channel::ChannelImpl * __cdecl AmqpClient::Channel::OpenSecureChannel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,struct AmqpClient::Channel::OpenOpts::TLSParams const &,bool)" (?OpenSecureChannel@Channel@AmqpClient@@CAPEAVChannelImpl@12@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@H000HAEBUTLSParams@OpenOpts@12@_N@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_ssl_socket_set_verify_peer,函数 "private: static class AmqpClient::Channel::ChannelImpl * __cdecl AmqpClient::Channel::OpenSecureChannel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,struct AmqpClient::Channel::OpenOpts::TLSParams const &,bool)" (?OpenSecureChannel@Channel@AmqpClient@@CAPEAVChannelImpl@12@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@H000HAEBUTLSParams@OpenOpts@12@_N@Z) 中引用了该符号
1>Channel.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_ssl_socket_set_verify_hostname,函数 "private: static class AmqpClient::Channel::ChannelImpl * __cdecl AmqpClient::Channel::OpenSecureChannel(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,struct AmqpClient::Channel::OpenOpts::TLSParams const &,bool)" (?OpenSecureChannel@Channel@AmqpClient@@CAPEAVChannelImpl@12@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@H000HAEBUTLSParams@OpenOpts@12@_N@Z) 中引用了该符号
1>ChannelImpl.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_cstring_bytes,函数 "private: static unsigned int cdecl AmqpClient::Channel::ChannelImpl::ComputeBrokerVersion(struct amqp_connection_state_t * const)" (?ComputeBrokerVersion@ChannelImpl@Channel@AmqpClient@@CAIQEAUamqp_connection_state_t@@@z) 中引用了该符号
1>ChannelImpl.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_get_channel_max,函数 "public: unsigned short __cdecl AmqpClient::Channel::ChannelImpl::CreateNewChannel(void)" (?CreateNewChannel@ChannelImpl@Channel@AmqpClient@@QEAAGXZ) 中引用了该符号
1>ChannelImpl.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_maybe_release_buffers_on_channel,函数 "public: void __cdecl AmqpClient::Channel::ChannelImpl::MaybeReleaseBuffersOnChannel(unsigned short)" (?MaybeReleaseBuffersOnChannel@ChannelImpl@Channel@AmqpClient@@QEAAXG@Z) 中引用了该符号
1>ChannelImpl.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_simple_wait_frame_noblock,函数 "public: bool _cdecl AmqpClient::Channel::ChannelImpl::GetMethodOnChannel<class boost::array<unsigned short,1>,class boost::array<unsigned int,1> >(class boost::array<unsigned short,1>,struct amqp_frame_t &,class boost::array<unsigned int,1> const &,class boost::chrono::duration<_int64,class boost::ratio<1,1000000> >)" (??$GetMethodOnChannel@V?$array@G$00@boost@@v?$array@I$00@2@@ChannelImpl@Channel@AmqpClient@@QEAA_NV?$array@G$00@boost@@AEAUamqp_frame_t@@aebv?$array@I$00@4@V?$duration@_JV?$ratio@$00$0PECEA@@boost@@@chrono@4@@z) 中引用了该符号
1>ChannelImpl.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_login_with_properties,函数 "public: void __cdecl AmqpClient::Channel::ChannelImpl::DoLogin(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int,bool)" (?DoLogin@ChannelImpl@Channel@AmqpClient@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@00H_N@Z) 中引用了该符号
1>ChannelImpl.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_get_server_properties,函数 "private: static unsigned int cdecl AmqpClient::Channel::ChannelImpl::ComputeBrokerVersion(struct amqp_connection_state_t * const)" (?ComputeBrokerVersion@ChannelImpl@Channel@AmqpClient@@CAIQEAUamqp_connection_state_t@@@z) 中引用了该符号
1>AmqpLibraryException.obj : error LNK2019: 无法解析的外部符号 __imp_amqp_error_string2,函数 "public: static class AmqpClient::AmqpLibraryException __cdecl AmqpClient::AmqpLibraryException::CreateException(int)" (?CreateException@AmqpLibraryException@AmqpClient@@sa?AV12@H@Z) 中引用了该符号
1>AmqpResponseLibraryException.obj : error LNK2001: 无法解析的外部符号 __imp_amqp_error_string2
1>TableImpl.obj : error LNK2019: 无法解析的外部符号 imp_init_amqp_pool,函数 "public: static struct amqp_table_t cdecl AmqpClient::Detail::TableValueImpl::CopyTable(struct amqp_table_t const &,class boost::shared_ptr &)" (?CopyTable@TableValueImpl@Detail@AmqpClient@@sa?AUamqp_table_t@@AEBU4@AEAV?$shared_ptr@Uamqp_pool_t@@@boost@@@z) 中引用了该符号
1>TableImpl.obj : error LNK2019: 无法解析的外部符号 __imp_empty_amqp_pool,函数 "void cdecl AmqpClient::Detail::free_pool(struct amqp_pool_t *)" (?free_pool@Detail@AmqpClient@@YAXPEAUamqp_pool_t@@@z) 中引用了该符号
1>TableImpl.obj : error LNK2019: 无法解析的外部符号 _imp_amqp_pool_alloc,函数 "struct amqp_field_value_t __cdecl boost::detail::variant::visitation_impl_invoke<class boost::detail::variant::invoke_visitor<class AmqpClient::Detail::TableValueImpl::generate_field_value const ,0>,void *,class std::vector<class AmqpClient::TableValue,class std::allocator >,struct boost::variant<struct AmqpClient::Detail::void_t,bool,signed char,short,int,__int64,float,double,class std::basic_string<char,struct std::char_traits,class std::allocator >,class std::vector<class AmqpClient::TableValue,class std::allocator >,class std::map<class std::basic_string<char,struct std::char_traits,class std::allocator >,class AmqpClient::TableValue,struct std::less<class std::basic_string<char,struct std::char_traits,class std::allocator > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits,class std::allocator > const ,class AmqpClient::TableValue> > >,unsigned char,unsigned short,unsigned int,unsigned _int64>::has_fallback_type>(int,class boost::detail::variant::invoke_visitor<class AmqpClient::Detail::TableValueImpl::generate_field_value const ,0> &,void *,class std::vector<class AmqpClient::TableValue,class std::allocator > *,struct boost::variant<struct AmqpClient::Detail::void_t,bool,signed char,short,int,_int64,float,double,class std::basic_string<char,struct std::char_traits,class std::allocator >,class std::vector<class AmqpClient::TableValue,class std::allocator >,class std::map<class std::basic_string<char,struct std::char_traits,class std::allocator >,class AmqpClient::TableValue,struct std::less<class std::basic_string<char,struct std::char_traits,class std::allocator > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits,class std::allocator > const ,class AmqpClient::TableValue> > >,unsigned char,unsigned short,unsigned int,unsigned int64>::has_fallback_type,int)" (??$visitation_impl_invoke@V?$invoke_visitor@$$CBVgenerate_field_value@TableValueImpl@Detail@AmqpClient@@$0A@@variant@detail@boost@@PEAXV?$vector@VTableValue@AmqpClient@@v?$allocator@VTableValue@AmqpClient@@@std@@@std@@Uhas_fallback_type@?$variant@Uvoid_t@Detail@AmqpClient@@NCFH_JMNV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@v?$vector@VTableValue@AmqpClient@@v?$allocator@VTableValue@AmqpClient@@@std@@@5@V?$map@V?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@VTableValue@AmqpClient@@U?$less@V?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@VTableValue@AmqpClient@@@std@@@2@@5@EGI_K@4@@variant@detail@boost@@ya?AUamqp_field_value_t@@HaeAv?$invoke_visitor@$$CBVgenerate_field_value@TableValueImpl@Detail@AmqpClient@@$0A@@012@PEAXPEAV?$vector@VTableValue@AmqpClient@@v?$allocator@VTableValue@AmqpClient@@@std@@@std@@Uhas_fallback_type@?$variant@Uvoid_t@Detail@AmqpClient@@_NCFH_JMNV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@v?$vector@VTableValue@AmqpClient@@v?$allocator@VTableValue@AmqpClient@@@std@@@5@V?$map@V?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@VTableValue@AmqpClient@@U?$less@V?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@VTableValue@AmqpClient@@@std@@@2@@5@EGI_K@2@H@Z) 中引用了该符号
1>TableImpl.obj : error LNK2019: 无法解析的外部符号 _imp_amqp_pool_alloc_bytes,函数 "public: struct amqp_field_value_t __cdecl boost::variant<struct AmqpClient::Detail::void_t,bool,signed char,short,int,__int64,float,double,class std::basic_string<char,struct std::char_traits,class std::allocator >,class std::vector<class AmqpClient::TableValue,class std::allocator >,class std::map<class std::basic_string<char,struct std::char_traits,class std::allocator >,class AmqpClient::TableValue,struct std::less<class std::basic_string<char,struct std::char_traits,class std::allocator > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits,class std::allocator > const ,class AmqpClient::TableValue> > >,unsigned char,unsigned short,unsigned int,unsigned __int64>::apply_visitor(class AmqpClient::Detail::TableValueImpl::generate_field_value const &)& " (??$apply_visitor@$$CBVgenerate_field_value@TableValueImpl@Detail@AmqpClient@@@?$variant@Uvoid_t@Detail@AmqpClient@@NCFH_JMNV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@v?$vector@VTableValue@AmqpClient@@v?$allocator@VTableValue@AmqpClient@@@std@@@5@V?$map@V?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@VTableValue@AmqpClient@@U?$less@V?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@@2@V?$allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@VTableValue@AmqpClient@@@std@@@2@@5@EGI_K@boost@@QEGAA?AUamqp_field_value_t@@AEBVgenerate_field_value@TableValueImpl@Detail@AmqpClient@@@z) 中引用了该符号
1>TableImpl.obj : error LNK2019: 无法解析的外部符号 imp_amqp_empty_table,函数 "public: static struct amqp_table_t cdecl AmqpClient::Detail::TableValueImpl::CopyTable(struct amqp_table_t const &,class boost::shared_ptr &)" (?CopyTable@TableValueImpl@Detail@AmqpClient@@sa?AUamqp_table_t@@AEBU4@AEAV?$shared_ptr@Uamqp_pool_t@@@boost@@@z) 中引用了该符号
1>D:\ETCLaneDesign\Client\SimpleAmqpClient-master\build\Release\SimpleAmqpClient.7.dll : fatal error LNK1120: 29 个无法解析的外部命令

@superGrandpaxx
Copy link

解决了吗

@rick-thebigdick
Copy link

这是因为找不到ssl模块,你在宏里找到关于ssl的一个变量,删了就行

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants