Skip to content
NSR-Physiome edited this page Jun 9, 2020 · 22 revisions

Building SBML libraries and programs for JSim.

JSim version 2.03 and above require the main libraries and java bindings from libSBML, the utility program sbtranslate from the Antimony package, and sbml2matlab program (JSim v2.07 and above) for full functionality. This document describes how to obtain what you need from those packages.

The core JSim program requires libsbml to perform its SBML/MML translations and Matlab code generation. This means that we need:

  • libsbml, the core C++ library;
  • libsbmlj, the SWIG-based wrapper Java-to-C++ library; and
  • libsbmlj.jar, the java code that calls the SWIG library.

By default, libsbml distributions will statically link the libsbml library and the libsbmlj library (plus any dependent XML-reading libraries and compression libraries), so there is only a single library file that you need (libsbmlj), plus the jar file. If space is not an issue, it is highly recommended that this be used directly. However, if space is an issue, it is possible to compile the library yourself.

In addition, the Antimony program sbtranslate is used to perform the Antimony/MML translation, as well as (potentially) Antimony/MML/CellML translations. This is an external executable that also uses libsbml internally, as well as (potentially) the CellML API. Antimony binary distributions can also be used in any form, as long as 'sbtranslate' works. Again, if space is an issue, you may wish to ensure that sbtranslate uses the same version of libsbml that you use above. However, if the binary distribution of libsbml is being used, this will not use the libsbml library at all (as it is statically linked to libsbmlj instead), so it is not even necessary to ensure that the version of libsbml being used is the same! If space is indeed an issue, you'll need to compile from source, and at that point, you might as well compile libsbml at the same time.

Introduction and requirements

Extracting from binaries:

Building from source

Building libsbml

MacOS application issues:

Building sbtranslate (Antimony)

Building SBML to Matlab code generator (sbml2matlab)

Clone this wiki locally