Requirements
In order to use the BIP tools, you need:
- a recent JVM (5.0 or upper) mandatory
- If you are willing to use the C++ code generator, you also need make and g++ (4 or upper) optional
On debian/ubuntu systems these dependencies can be satisfied by installing the following packages: openjdk-6-jre, make and g++
Beware that currently, we only provide the BIP runtime for systems running GNU/Linux on x86 platforms (compiler should run fine on any system, provided it has a decent Java support).
Software Licence
Copyright (c) 2007, VERIMAG LABORATORY, GIERES, FRANCE
Permission to install, copy, and use this software and associated documentation for any purpose other than its incorporation into a commercial product is hereby granted without fee. Permission to distribute this Software and its documentation only for non-commercial use is also granted without fee. This permission is subject to the following conditions:
THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS, VERIMAG LABORATORY, OR ANY PERSON OR INSTITUTION RELATED TO VERIMAG LABORATORY, BE LIABLE FOR ANY CLAIM OR OTHER LIABILITY, OR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
The BIP Compiler and Runtime
We provide a self-sufficient archive that contains everything needed by the BIP compiler and its runtime (the real-time BIP compiler and runtime can be found here):
Simply extract this archive on your system and point the environment variable BIP2_HOME to this new directory. Then the BIP compiler is invoked by running the $BIP2_HOME/bin/bipc executable:
~ $ tar zxvf BIP.linux.x86.tar.gz
BIP.linux.x86/externals/
BIP.linux.x86/bin/
BIP.linux.x86/doc/
BIP.linux.x86/examples/
BIP.linux.x86/bip-parts/
BIP.linux.x86/include/
BIP.linux.x86/include/mono/
BIP.linux.x86/include/multi/
...
~ $ export BIP2_HOME=$PWD/BIP.linux.x86
~ $ $BIP2_HOME/bin/bipc -h
BIP Compiler. Version: frontend: trunk@2324, backend:trunk@2324
Usage: bipc -f <input> options
or bipc -m <model> options
-I <include directory>
--genC-execute : generate code for execution
--genC-multi : generate code for multithread execution
-g : generate debug functions
--genC-explore : generate code for state exploration
--gen-graphviz <PREFIX> : generate graphviz file for automaton. Files prefixed by PREFIX
--gen-graphviz-script <SCRIPT> : generate a script for dot->png conversion in <SCRIPT>
~ $
BIP software as a library
Within the self-sufficient archive, you can find sub-archives corresponding to different part of the compiler. You can also download some separately:
- metamodel. This archive also includes the ’ecore’ file and the necessary build script to generate the corresponding Java code (checkout the javadoc)
- the parser for loading BIP files.
BIP Tools Documentation
The BIP tools are provided with documentation:
- a javadoc which is a low level documentation of the BIP software.