borjaborja Administrator, Fabric Employee Posts: 480 admin
edited November 2016 in Kludge Auto-Wrapping Tool

Kludge is our work in progress tool to wrap C++ libraries into KL extensions.

Kludge repository is open and you can clone it from


Kludge is fairly well-documented and useful enough to wrap a few extensions on our end, but it is still in an alpha stage. We are interested in any feedback people have here, especially any bugs that are found or suggestions for better ways of doing things. If you find any issue feel free to file them at bugs@fabricengine.com (one issue per email).

The process involved to construct Kludge requires several build steps and only runs on 64-bit Linux at this point. Because of this we have prepared a Kludge virtual machine image running Centos 6 that we have shared on Dropbox and you should be able to run with VMware player or virtual box.

You can get it at https://www.dropbox.com/sh/gi9ic8zyndx5iou/AAA2V0PthvikyPZo0GSAbntza?dl=0 (password is Fabric123)

Besides the VM image, you will find a README file that explains where to start with the image.

The use of Kludge involves a two step process

A discover phase that takes C++ header files and tries to generate an API description in the description language (This description language is similar in concept to the DSL used by boost.python). It is impossible to map every possible C++ API to the API description language but the discover tool tries hard and can wrap many common cases.

A generate phase that takes the API description language and generates a KL extension, written in both C++ and KL, that wraps the API.

Please read the Kludge documentation to get a better insight on how it works

Feel free to use this forum to ask questions or send us feedback on your experience using Kludge.

Borja Morales
Technical Product Manager
Fabric Software Inc.

Sign In or Register to comment.