There is a very minimal INSTALL.md in the repo, but basically you just need to install czmq (and zmq obviously) and on ubuntu the libffi-dev package. After that run '. bootstrap' which will create a python virtual environment for you and install the dependency (which is the python cffi package). After that "python -c 'import pyczmq'" should succeed. Alternatively if you don't care about the VE and don't mind installing it into your system Python instead of running the bootstrap you can do 'sudo python setup.py install'
-Michel On Fri, Oct 11, 2013 at 8:57 AM, Pieter Hintjens <[email protected]> wrote: > Michel, > > It would be useful (to me at least) to have a brief list of what I > need to install in order to build this (Ubuntu). > > -Pieter > > On Fri, Oct 11, 2013 at 5:40 PM, Michel Pelletier > <[email protected]> wrote: > > Thanks Felipe! I appreciate the kind words and I hope you enjoy your > > vacation. I'm really enjoying the cffi module, it seems like one of > those > > cool projects that creates a convergence in the evolution of software. > > > > For those who are interested I've made some more progress: > > > > There's an initial start at wrapping the low level zmq functions in > > pyczmq.zmq. This was done largely to expose the ability to do "zero > copy" > > messages support for which was removed from czmq. > > > > New code format permits automatic sphinx documentation, which is now > hosted > > via an automatic git commit hook thanks to readthedocs.org, for example: > > > http://pyczmq.readthedocs.org/en/latest/pyczmq.html#module-pyczmq.zsocket > > > > I'm going to try and get all the loose ends wrapped up this week and > drop a > > lot more tests in. > > > > -Michel > > > > > > > > > > On Thu, Oct 10, 2013 at 3:42 PM, Felipe Cruz <[email protected]> > wrote: > >> > >> Hi Michael. > >> > >> Unfortunately there's no such tool for python cffi. Even pyzmq is a mix > of > >> cython and cffi, both manually coded. > >> > >> Anyway, I'm very interested in provide access for features like zbeacon > >> and projects like FileMQ to high level languages such as Python. There > are a > >> lot of opportunities to be explored when those features become > available. > >> > >> I'm on vacation right now but ASAP, I would like to participate in make > >> this moving forward! > >> > >> great work BTW > >> > >> regards, > >> Felipe > >> > >> > >> > >> > >> > >> 2013/10/9 Pieter Hintjens <[email protected]> > >>> > >>> I've never heard of such a tool but it seems worth making... I'll have > >>> a whack at it when I get bored later this week. > >>> > >>> On Wed, Oct 9, 2013 at 9:24 PM, Michel Pelletier > >>> <[email protected]> wrote: > >>> > Automation would be be great, and not just for Python, making the > >>> > wrapper > >>> > was a bit tedious, although completely doable. I'm surprised there > >>> > isn't > >>> > something like SWIG but for libffi, where you can point a .h file and > >>> > some > >>> > kind of specfile at a tool that dumps the correct bindings > incantation > >>> > for > >>> > various languages. Maybe there is such a tool? A quick google > didn't > >>> > reveal much to me. > >>> > > >>> > -Michel > >>> > > >>> > > >>> > On Wed, Oct 9, 2013 at 12:27 AM, Pieter Hintjens <[email protected]> > wrote: > >>> >> > >>> >> Hi Michel, > >>> >> > >>> >> This is great fun! I'm going to look at what you did since I'd like > to > >>> >> try generating Python wrappers for our standardish C APIs (FileMQ, > >>> >> Zyre, for instance). > >>> >> > >>> >> -Pieter > >>> >> > >>> >> On Wed, Oct 9, 2013 at 4:28 AM, Michel Pelletier > >>> >> <[email protected]> wrote: > >>> >> > Wanting to know more about Python and CFFI, I decided to do a > >>> >> > straightforward wrap job for Python around the CZMQ C API. I have > >>> >> > it > >>> >> > reasonable complete enough to write some simple code and tests. > >>> >> > I've > >>> >> > pushed > >>> >> > it up to github: > >>> >> > > >>> >> > https://github.com/michelp/pyczmq > >>> >> > > >>> >> > Most of the core functionality, zctx, zsocket, zsockopt, zpoller, > >>> >> > zmsg, > >>> >> > zframe, zstr, zloop, zbeacon, zcert, zauth, are exposed as both > >>> >> > straight > >>> >> > wrappers around the C interface as well as some namespaced > functions > >>> >> > that > >>> >> > provide a high level functional interface (eg, turning cdata char > * > >>> >> > into > >>> >> > python byte strings, etc). For example: > >>> >> > > >>> >> > > >>> >> > ctx = zctx.new() > >>> >> > push = zsocket.new(ctx, zsocket.PUSH) > >>> >> > pull = zsocket.new(ctx, zsocket.PULL) > >>> >> > zsocket.bind(push, 'inproc://test') > >>> >> > zsocket.connect(pull, 'inproc://test') > >>> >> > zstr.send(push, 'foo') > >>> >> > assert zstr.recv(pull) == 'foo' > >>> >> > zstr.send(push, 'bar') > >>> >> > zsocket.poll(pull, 1) > >>> >> > assert zstr.recv_nowait(pull) == 'bar' > >>> >> > > >>> >> > > >>> >> > > >>> >> > There's also a first stab at providing an OO interface in the form > >>> >> > of > >>> >> > Context, Socket, Beacon and Loop classes. Here's a working > example: > >>> >> > > >>> >> > ctx = Context() > >>> >> > pub = ctx.socket('PUB') > >>> >> > sub = ctx.socket('SUB') > >>> >> > sub.set_subscribe('') > >>> >> > pub.bind('inproc://zoop') > >>> >> > sub.connect('inproc://zoop') > >>> >> > pub.send('foo') > >>> >> > sub.poll(1) > >>> >> > assert sub.recv() == 'foo' > >>> >> > > >>> >> > > >>> >> > This is a work in progress, it's useful enough now to create > socket > >>> >> > and > >>> >> > messages and send and receive data. I'd certainly love any form > of > >>> >> > help, > >>> >> > just send me a pull request. Featured desired are way more tests! > >>> >> > And > >>> >> > of > >>> >> > course any missing functions that need wrapping, or new > >>> >> > functionality. > >>> >> > > >>> >> > Thanks and enjoy, > >>> >> > > >>> >> > -Michel > >>> >> > > >>> >> > _______________________________________________ > >>> >> > 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 > >> > >> > >> > >> > >> -- > >> Felipe Cruz > >> http://about.me/felipecruz > >> > >> _______________________________________________ > >> 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
