C++ Client Library for PyCOM

See for introduction to PyCOM.


libpycom versions are synchronized with PyCOM, so for PyCOM x.y.z
you need libpycom >= x.y.

libpycom is using CMake (
After you have CMake, run (example for POSIX system):

    $ mkdir build
    $ cd build
    $ cmake ..
    $ make
    $ make install

Run tests:

    $ ./test

You should have nameserver running on tcp:// for tests to succeed.


You can use libpycom as follows:

    #include <pycom.h>

    pycom::Context ctx("...");
    std::auto_ptr<pycom::Component> obj;

    try {
    catch (pycom::LookupError) {
        // Interface not found

    pycom::Value val;

    try {
        val = obj->invoke("...");
    catch (pycom::LookupError) {
        // Method or service cannot be accessed
    catch (pycom::RemoteError) {
        // Server side reported error

    // Use val here

Note that libpycom is using internal version of jsoncpp
( for JSON values.

Legal notes

libpycom is distributed under New BSD license as stated in LICENSE file.

Copyright (c) 2011-2012 Dmitry 'Divius' Tantsur.