Thanks Michael & MinRK!

That's exactly what I was looking for - I knew there has to be some simple way 
to do it. Now the only problem is one needs to have the zmq includes when 
importing stuff from libzmq. Is there a chance that these could be bundled with 
pyzmq when using a bundled libzmq instance? Otherwise 3rd party extensions will 
still require the zmq headers to be made available manually..

-Tom
On Aug 9, 2013, at 9:18 PM, MinRK <[email protected]> wrote:

> 
> 
> 
> On Fri, Aug 9, 2013 at 12:00 PM, Michael Haberler <[email protected]> wrote:
> Tom,
> 
> Am 09.08.2013 um 20:34 schrieb Tom Farnbauer <[email protected]>:
> 
> > I'm pretty certain that I'm importing zmq first and it loads just fine. 
> > Then once I try to import my stuff, it fails and tells me that:
> >
> > ImportError: libzmq.so: cannot open shared object file: No such file or 
> > directory
> >
> > One interesting thing I noticed is that when I run `ldd <any one of pyzmq 
> > backend extensions>` libzmq.so is not in the output. It is however listed 
> > when I run it on my own extension module. This happens even if I link 
> > specifically against the libzmq instance that is bundled with zmq. I've 
> > tried playing around with different dlopen settings to no avail (based on 
> > this old info here: 
> > http://muttley.hates-software.com/2006/01/25/c37456e6.html). It appears 
> > that python doesn't use RTLD_GLOBAL by default, but trying to force it 
> > (through sys.setdlopenflags) didn't help...
> >
> > If I add the zmq package directory to LD_LIBRARY_PATH, it works just fine. 
> > I'm trying not to have to gdb it but I just may have to.
> 
> you might want to look into the rpath linker option - in essence it gives you 
> a way to bundle a library path with a binary
> 
> Ah yes, I forgot that I do this in pyzmq when I ship libzmq with it.  The 
> distutils setting is `runtime_library_dirs`, and can include relative paths 
> (relative to the compiled extension, if I recall).
> 
> -MinRK
>  
> 
> - Michael
> 
> 
> >
> > The code in question is here: 
> > https://github.com/SleepingPills/splice.io/blob/master/splice/receiver.pyx 
> > (warning: it is fairly hacky at the moment)
> > _______________________________________________
> > zeromq-dev mailing list
> > [email protected]
> > http://lists.zeromq.org/mailman/listinfo/zeromq-dev
> 
> _______________________________________________
> zeromq-dev mailing list
> [email protected]
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
> 
> _______________________________________________
> zeromq-dev mailing list
> [email protected]
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev

_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to