Am 21.01.2011 16:46, schrieb Timothy Bish [via ActiveMQ]: > On Fri, 2011-01-21 at 07:36 -0800, andreas.meinecke wrote: > > > Am 21.01.2011 16:21, schrieb Timothy Bish [via ActiveMQ]: > > > On Fri, 2011-01-21 at 07:15 -0800, andreas.meinecke wrote: > > > > > > > Am 21.01.2011 15:48, schrieb Timothy Bish [via ActiveMQ]: > > > > > On Fri, 2011-01-21 at 06:40 -0800, andreas.meinecke wrote: > > > > > > > > > > > Am 21.01.2011 15:25, schrieb Timothy Bish [via ActiveMQ]: > > > > > > > On Fri, 2011-01-21 at 06:18 -0800, andreas.meinecke wrote: > > > > > > > > > > > > > > > Hey all, > > > > > > > > > > > > > > > > i am trying to build the ActiveMQCpp libraries for windows > > > x64 with > > > > > > > vs2008. > > > > > > > > > > > > > > > > When i build it in debug mode x64, everything went fine > > > until i try > > > > > > > to link > > > > > > > > the libactivemq-cppd.lib from an other project. Here i get > > > about > > > > > 600 > > > > > > > > unresolved external symbol errors in libactivemq-cppd.lib. > > > > > > > > > > > > > > > > So i tried to build the DebugDLL configuration, but here > i get > > > > > about > > > > > > > 1500 > > > > > > > > unresolved external symbol errors during linking. > > > > > > > > > > > > > > > > Any hints? > > > > > > > > > > > > > > > > best regards, > > > > > > > > Andreas > > > > > > > > > > > > > > Best thing to do is look at the settings in the example > > > project to > > > > > see > > > > > > > how that is configured, you need to be linking in the apr and > > > > > apr-util > > > > > > > libs plus openssl if you enabled SSL. > > > > > > > > > > > > > > Regards > > > > > > Hello Tim, > > > > > > > > > > > > many thanks for your very fast answer. I have compiled apr and > > > apr-util > > > > > > as well for windows x64 and yes, both libs are linked into the > > > project. > > > > > > But this is not solving my unresolved external symbol errors. > > > > > > > > > > > > Any other ideas? > > > > > > > > > > > > > > > > What are some of the symbols that aren't being resolved? > > > > > > > > > > Have you examined the project settings for the examples provided > > > by in > > > > > the CMS package? > > > > Here are some errors trying to link libativemq-cppd.lib into my > > > project : > > > > 1>libactivemq-cppd.lib(Network.obj) : error LNK2019: unresolved > > > external > > > > symbol "public: virtual __cdecl > > > > > > > > decaf::internal::util::ResourceLifecycleManager::~ResourceLifecycleManager(void)" > > > > > > > > > (??1ResourceLifecycleManager@util@internal@decaf@@UEAA@XZ) > > > referenced in > > > > function "int `public: __cdecl > > > > decaf::internal::net::NetworkData::NetworkData(void)'::`1'::dtor$0" > > > > (?dtor$0@?0???0NetworkData@net@internal@decaf@@QEAA@XZ@4HA) > > > > 1>libactivemq-cppd.lib(Network.obj) : error LNK2019: unresolved > > > external > > > > symbol "public: __cdecl > > > > > > > > decaf::internal::util::ResourceLifecycleManager::ResourceLifecycleManager(void)" > > > > > > > > > (??0ResourceLifecycleManager@util@internal@decaf@@QEAA@XZ) > > > referenced in > > > > function "public: __cdecl > > > > decaf::internal::net::NetworkData::NetworkData(void)" > > > > (??0NetworkData@net@internal@decaf@@QEAA@XZ) > > > > 1>libactivemq-cppd.lib(ActiveMQMapMessage.obj) : error LNK2019: > > > > unresolved external symbol "public: virtual void __cdecl > > > > activemq::commands::Message::afterUnmarshal(class > > > > activemq::wireformat::WireFormat *)" > > > > > > > > (?afterUnmarshal@Message@commands@activemq@@UEAAXPEAVWireFormat@wireformat@3@@Z) > > > > > > > > > referenced in function "int `public: virtual float __cdecl > > > > activemq::commands::ActiveMQMapMessage::getFloat(class > > > > std::basic_string<char,struct std::char_traits<char>,class > > > > std::allocator<char> > const &)const '::`1'::catch$12" > > > > > > > > (?catch$12@?0??getFloat@ActiveMQMapMessage@commands@activemq@@UEBAMAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4HA) > > > > 1>libactivemq-cppd.lib(ActiveMQBlobMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual void __cdecl > > > > activemq::commands::Message::afterUnmarshal(class > > > > activemq::wireformat::WireFormat *)" > > > > > > > > (?afterUnmarshal@Message@commands@activemq@@UEAAXPEAVWireFormat@wireformat@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQObjectMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual void __cdecl > > > > activemq::commands::Message::afterUnmarshal(class > > > > activemq::wireformat::WireFormat *)" > > > > > > > > (?afterUnmarshal@Message@commands@activemq@@UEAAXPEAVWireFormat@wireformat@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQTextMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual void __cdecl > > > > activemq::commands::Message::afterUnmarshal(class > > > > activemq::wireformat::WireFormat *)" > > > > > > > > (?afterUnmarshal@Message@commands@activemq@@UEAAXPEAVWireFormat@wireformat@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQBytesMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual void __cdecl > > > > activemq::commands::Message::afterUnmarshal(class > > > > activemq::wireformat::WireFormat *)" > > > > > > > > (?afterUnmarshal@Message@commands@activemq@@UEAAXPEAVWireFormat@wireformat@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQMessage.obj) : error LNK2001: > unresolved > > > > external symbol "public: virtual void __cdecl > > > > activemq::commands::Message::afterUnmarshal(class > > > > activemq::wireformat::WireFormat *)" > > > > > > > > (?afterUnmarshal@Message@commands@activemq@@UEAAXPEAVWireFormat@wireformat@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQStreamMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual void __cdecl > > > > activemq::commands::Message::afterUnmarshal(class > > > > activemq::wireformat::WireFormat *)" > > > > > > > > (?afterUnmarshal@Message@commands@activemq@@UEAAXPEAVWireFormat@wireformat@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQMapMessage.obj) : error LNK2019: > > > > unresolved external symbol "public: virtual class > > > > decaf::lang::Pointer<class activemq::commands::Command,class > > > > decaf::util::concurrent::atomic::AtomicRefCounter> __cdecl > > > > activemq::commands::Message::visit(class > > > activemq::state::CommandVisitor > > > > *)" > > > > > > > > (?visit@Message@commands@activemq@@UEAA?AV?$Pointer@VCommand@commands@activemq@@VAtomicRefCounter@atomic@concurrent@util@decaf@@@lang@decaf@@PEAVCommandVisitor@state@3@@Z) > > > > > > > > > referenced in function "int `public: virtual float __cdecl > > > > activemq::commands::ActiveMQMapMessage::getFloat(class > > > > std::basic_string<char,struct std::char_traits<char>,class > > > > std::allocator<char> > const &)const '::`1'::catch$13" > > > > > > > > (?catch$13@?0??getFloat@ActiveMQMapMessage@commands@activemq@@UEBAMAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4HA) > > > > 1>libactivemq-cppd.lib(ActiveMQBlobMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual class > > > > decaf::lang::Pointer<class activemq::commands::Command,class > > > > decaf::util::concurrent::atomic::AtomicRefCounter> __cdecl > > > > activemq::commands::Message::visit(class > > > activemq::state::CommandVisitor > > > > *)" > > > > > > > > (?visit@Message@commands@activemq@@UEAA?AV?$Pointer@VCommand@commands@activemq@@VAtomicRefCounter@atomic@concurrent@util@decaf@@@lang@decaf@@PEAVCommandVisitor@state@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQObjectMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual class > > > > decaf::lang::Pointer<class activemq::commands::Command,class > > > > decaf::util::concurrent::atomic::AtomicRefCounter> __cdecl > > > > activemq::commands::Message::visit(class > > > activemq::state::CommandVisitor > > > > *)" > > > > > > > > (?visit@Message@commands@activemq@@UEAA?AV?$Pointer@VCommand@commands@activemq@@VAtomicRefCounter@atomic@concurrent@util@decaf@@@lang@decaf@@PEAVCommandVisitor@state@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQTextMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual class > > > > decaf::lang::Pointer<class activemq::commands::Command,class > > > > decaf::util::concurrent::atomic::AtomicRefCounter> __cdecl > > > > activemq::commands::Message::visit(class > > > activemq::state::CommandVisitor > > > > *)" > > > > > > > > (?visit@Message@commands@activemq@@UEAA?AV?$Pointer@VCommand@commands@activemq@@VAtomicRefCounter@atomic@concurrent@util@decaf@@@lang@decaf@@PEAVCommandVisitor@state@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQBytesMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual class > > > > decaf::lang::Pointer<class activemq::commands::Command,class > > > > decaf::util::concurrent::atomic::AtomicRefCounter> __cdecl > > > > activemq::commands::Message::visit(class > > > activemq::state::CommandVisitor > > > > *)" > > > > > > > > (?visit@Message@commands@activemq@@UEAA?AV?$Pointer@VCommand@commands@activemq@@VAtomicRefCounter@atomic@concurrent@util@decaf@@@lang@decaf@@PEAVCommandVisitor@state@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQMessage.obj) : error LNK2001: > unresolved > > > > external symbol "public: virtual class decaf::lang::Pointer<class > > > > activemq::commands::Command,class > > > > decaf::util::concurrent::atomic::AtomicRefCounter> __cdecl > > > > activemq::commands::Message::visit(class > > > activemq::state::CommandVisitor > > > > *)" > > > > > > > > (?visit@Message@commands@activemq@@UEAA?AV?$Pointer@VCommand@commands@activemq@@VAtomicRefCounter@atomic@concurrent@util@decaf@@@lang@decaf@@PEAVCommandVisitor@state@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQStreamMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual class > > > > decaf::lang::Pointer<class activemq::commands::Command,class > > > > decaf::util::concurrent::atomic::AtomicRefCounter> __cdecl > > > > activemq::commands::Message::visit(class > > > activemq::state::CommandVisitor > > > > *)" > > > > > > > > (?visit@Message@commands@activemq@@UEAA?AV?$Pointer@VCommand@commands@activemq@@VAtomicRefCounter@atomic@concurrent@util@decaf@@@lang@decaf@@PEAVCommandVisitor@state@3@@Z) > > > > 1>libactivemq-cppd.lib(ActiveMQMapMessage.obj) : error LNK2019: > > > > unresolved external symbol "public: virtual bool __cdecl > > > > activemq::commands::Message::isExpired(void)const " > > > > (?isExpired@Message@commands@activemq@@UEBA_NXZ) referenced in > function > > > > "int `public: virtual float __cdecl > > > > activemq::commands::ActiveMQMapMessage::getFloat(class > > > > std::basic_string<char,struct std::char_traits<char>,class > > > > std::allocator<char> > const &)const '::`1'::catch$15" > > > > > > > > (?catch$15@?0??getFloat@ActiveMQMapMessage@commands@activemq@@UEBAMAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z@4HA) > > > > 1>libactivemq-cppd.lib(ActiveMQBlobMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual bool __cdecl > > > > activemq::commands::Message::isExpired(void)const " > > > > (?isExpired@Message@commands@activemq@@UEBA_NXZ) > > > > 1>libactivemq-cppd.lib(ActiveMQObjectMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual bool __cdecl > > > > activemq::commands::Message::isExpired(void)const " > > > > (?isExpired@Message@commands@activemq@@UEBA_NXZ) > > > > 1>libactivemq-cppd.lib(ActiveMQTextMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual bool __cdecl > > > > activemq::commands::Message::isExpired(void)const " > > > > (?isExpired@Message@commands@activemq@@UEBA_NXZ) > > > > 1>libactivemq-cppd.lib(ActiveMQBytesMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual bool __cdecl > > > > activemq::commands::Message::isExpired(void)const " > > > > (?isExpired@Message@commands@activemq@@UEBA_NXZ) > > > > 1>libactivemq-cppd.lib(ActiveMQMessage.obj) : error LNK2001: > unresolved > > > > external symbol "public: virtual bool __cdecl > > > > activemq::commands::Message::isExpired(void)const " > > > > (?isExpired@Message@commands@activemq@@UEBA_NXZ) > > > > 1>libactivemq-cppd.lib(ActiveMQStreamMessage.obj) : error LNK2001: > > > > unresolved external symbol "public: virtual bool __cdecl > > > > activemq::commands::Message::isExpired(void)const " > > > > (?isExpired@Message@commands@activemq@@UEBA_NXZ) > > > > ... > > > > > > > > Yes, i have checked the settings in the examples included in the > > > > activemq-cpp vs2008 project and my settings are the same. > > > > > > > > best regards, > > > > Andreas > > > > > > > > > > There's clearly something wrong with the amq library build or you are > > > attempting to link a 64bit aoo with a 32bit build of the lib, you > should > > > double check what you built for ActiveMQ-CPP and ensure that you > built > > > the x64 versions of the libraries. > > > > > I have resetup my build environment and now only one external symbol is > > left unresolved > > ""public: virtual __cdecl cms::MessageListener::~MessageListener(void)" > > (??1MessageListener@cms@@UEAA@XZ)" > > > > So it seems that you are right and something was definitive wrong with > > local build setup. > > > > Any idea about the one left error? > > > > best regards, > > Andreas > > Probably good to double check that the MessageListener.h is included in > the project files. Unsure what else would cause that one symbol to not > be included. > I have searched the libactivemq-cppd.lib for the cms::MessageListener::~MessageListener function and found out that this one is not defined in my x64 version of the amq library. The x32 version in contrast includes this function. So i would think something went wrong during build process. But i do not have any idea right now to solve this problem.
best regards, Andreas -- View this message in context: http://activemq.2283324.n4.nabble.com/Building-ActiveMQCpp-3-2-4-on-Windows-7-x64-tp3229732p3229992.html Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
