[zeromq-dev] Problem with embedded ZeroMQ (static lib) under Windows

Oliver Smith oliver at kfs.org
Fri Apr 29 01:49:05 CEST 2011


I've just updated our project's ZeroMQ to 2.1.6 from 2.1.0.

We build zeromq as a static library and then embed it into the 
application. (The only real trick to making this work was that the 
ZeroMQ headers automatically go about using DLL_EXPORT if _WIN32 is 
defined).

After the upgrade, we're running into a problem where zmq:connect() 
causes a crash, which appears to be a Multi-Byte Character / Unicode 
conflict -- we build our project (and our ZeroMQ) with Unicode.

We're having a rather hard time figuring out how to fix this.

connect -> socketbase_t::connect -> socketbase_t::attach_pipes -> 
UUID    () -> create_blob() -> convert_byte()

      App.exe!UUID::convert_byte(const char * hexa_=0x13915c19)  Line 
204    C++
      App.exe!UUID::create_blob()  Line 213 + 0x10 bytes    C++
 >    App.exe!UUID::UUID()  Line 34    C++
      App.exe!socket_base_t::attach_pipes(zmq::reader_t * 
inpipe_=0x14a637d0, zmq::writer_t * outpipe_=0x14b70fb8, const 
std::basic_string<unsigned char, std::char_traits<unsigned char>, 
std::allocator<unsigned char> > & peer_identity_={...})  Line 215 + 0x11 
bytes    C++
      App.exe!socket_base_t::connect(const char * addr_=0x14df3070)  
Line 447 + 0x3e bytes    C++
      App.exe!zmq_connect(void * s_=0x0f371bd0, const char * 
addr_=0x14df3070)  Line 366 + 0x11 bytes    C++
      App.exe!ZMQ_Socket__connect__meth(lua_State * L=0x05516130)  Line 
2281 + 0x3f bytes    C
      lua51.dll!1000896d()
      [Frames below may be incorrect and/or missing, no symbols loaded 
for lua51.dll]
      lua51.dll!10017f74()
      lua51.dll!100089eb()
      lua51.dll!10001fe5()
      lua51.dll!10007f9a()
      lua51.dll!10008b8e()
      lua51.dll!10002041()
      App.exe!_tolua_pushfieldusertype()  + 0x30 bytes    C
      App.exe!_luaRunScript(lua_State * L=0x05516130)  Line 451 + 0x36 
bytes    C++
      lua51.dll!10007f9a()
      lua51.dll!10008b8e()
      lua51.dll!10002041()
      App.exe!_tolua_pushfieldusertype()  + 0x30 bytes    C
      App.exe!_luaRunScript(lua_State * L=0x05516130)  Line 451 + 0x36 
bytes    C++
      lua51.dll!10007f9a()
      lua51.dll!10008b8e()
      lua51.dll!10002041()
      App.exe!_tolua_pushfieldusertype()  + 0x30 bytes    C
      App.exe!_luaRunScript(lua_State * L=0x05510000)  Line 451 + 0x36 
bytes    C++
      msvcr90.dll!free(void * pBlock=0x967c93d3)  Line 110    C
      8dffffff()

//
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20110428/fe8d9109/attachment.htm>


More information about the zeromq-dev mailing list