Differences

This shows you the differences between two versions of the page.

Link to this comparison view

muster:9.0:buildingapi [2018/01/10 14:01] (current)
Line 1: Line 1:
 +==== REBUILDING THE SDK APIs ====
 +
 +Muster comes with a set of pre-built binaries for the various scripting languages we support for the MClientAPI and the MTemplateAPI modules.
 +
 +If you need different binaries for compatibility with the production build of your scripting languages, you can rebuilt the API sources on your own. Starting with version 8.5.4, we distribute the SWIG interfaces to rebuild MClientLib and MTemplateLib modules.
 +
 +Muster uses SWIG to produce the language bindings, make sure you have the correct version of SWIG installed, at the time of this writing, you should build the Muster interfaces with version 2.0.9. Attempting to build the interfaces with a different version may produce wrong or untested results. You can download SWIG from http://​www.swig.org/​download.html
 +
 +The following scripts show you how to build the APIs on a Linux/Mac platform for Python 2.6, you can follow the SWIG guidelines for command line options to build the interfaces for a different language:
 +
 +<​code>​
 +
 +# Building the MClientAPI module
 +
 +swig -c++ -Wall -python -classic -o ./​clientlib.cxx interfaces/​MClientLib.i
 +g++ -c -fPIC -DSWIG_TYPE_TABLE=MUSTER -DSWIGCOMPILE -o clientlib.o clientlib.cxx -I./​includes -I./​includes/​MClientLib -I/​usr/​include/​python2.6
 +g++ -shared -L/​usr/​local/​muster8 -lMBase -lMClientLib -lMTemplate -lpython2.6 -o _MClientAPI.so clientlib.o
 +</​code>​
 +
 +<​code>​
 +
 +# Building the MTemplateAPI module
 +
 +swig -c++ -Wall -python -classic -o ./​template.cxx interfaces/​MTemplate.i
 +g++ -c -fPIC -DSWIG_TYPE_TABLE=MUSTER -DSWIGCOMPILE -o template.o template.cxx -I./​includes -I./​includes/​MClientLib -I./​includes/​MTemplate -I/​usr/​include/​python2.6
 +g++ -shared -L/​usr/​local/​muster8 -lMBase -lMClientLib -lMTemplate -lpython2.6 -o _MTemplateAPI.so template.o
 +</​code>​
 +