Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 28 Next »

The KIELER Compiler Console is a pure Java program that together with a KIELER RCA allows to call the KIELER Compiler from the console. For using the KIELER Compiler Console you need to

  1. Enable the TCP Server in the KIELER RCA and

In the following we give a short quick start guide and describe the details for both, the enabling of the TCP server and the possible command line calls of KiCo from the command line:

 

Quick Start Guide

  1. Download KIELER RCA from http://rtsys.informatik.uni-kiel.de/~kieler/files/nightly/kieler/ extract it to some location x on your hard drive
  2. Download the KielerCompilerConsole (alternative Download) as a runnable Java JAR archive and save it to some location y on your hard drive
  3. Open console window and change directory to location x, then type:
    kieler -application de.cau.cs.kieler.kico.web.server -noExit -p 5555 &
  4. Change directory to location y, then type:
    java -jar KielerCompiler.jar 5555 -f somescchart.sct -o somescchart.c CODEGENERATION

    where somescchart.sct must be a valid SCChart modeled with the KIELER SCCharts editor. You should find the generated c code in the file somsschart.c. Be sure that somescchart.sct is also located in directory y (or give the full path in "...").

 

Enable the TCP Server

Before you can use the KielerCompiler.jar from the console, you need to start the KIELER RCA and activate the TCP Server. This is done using the button at 1. shown in the screenshot below. When pressing it the windows shown at 2. is displayed and allows to enable or disable the server and also to modify the default port of 5555. Whenever the server was enabled and is started, you will see its job running at 3. in the lower region of the KIELER RCA. When you enabled the server in previous runs of the KIELER RCA it will automatically started when you run KIELER again.

Non-GUI TCP Server

Alternatively (after you configured the port) you can start the KiCo TCP Server via command line:

kieler -application de.cau.cs.kieler.kico.web.server -noExit [-p <port>] [-d]

This will start a background process with the KIELER Compiler TCP Server. Optionally you can specify a (new) listening port for the TCP server using "-p <port>" or  "–port <port>",e.g. "-p 5555". The option -d or --debug enables the debug mode with verbose debug output messages.

 

Using the KielerCompiler from Console

Download the KielerCompilerConsole (alternative Download) as a runnable Java JAR archive and start it using java:

java -jar KielerCompiler.jar <host>:<port> [Options] <transformationID_1> .. <transformationID_n>

In the above screenshot you see the KielerCompiler options when calling with no/too few parameters. The host or the port are mandatory parameters. By default the port 5555 is used and the default host is localhost. If you secify the port you do not need to specify localhost, if you specify the host you do not need to specify 5555. The following options are available:

  • -f <filename> : Use a specific input file (and not the console)
  • -o <filename> : Use a specific output file (and not the console)
  • -v : Use verbose compilation, more error messages
  • -s: Use strict mode compilation (only apply selected transformations)

 

Transformation IDs

In order to use the KIELER Compiler from the command line you need to know the ID of the transformations you would like to apply.

Common Transformation IDsMore Transformation IDs

Here are the most common ones:

Transformation IDDescription
REFERENCEExpand reference states
EXTENDEDAll extended SCCharts transformations resulting in a Core SCChart
COREAll core SCCharts transformations resulting in a Normalized SCChart
SCGRAPHTransform to an SCG
CODEGENERATIONGenerate C code

In order to get other transformation IDs you can use the KIELER Compiler Selection View. It will show the transformation ID for each transformation or transformation group as a tooltip text that will show up if you place and hold the mouse over the transformation node as shown below:

 

 

Example Calls

Example 1

When calling the KielerCompiler with the ABORT transformation and console output.

 

Example 2

Using the KielerCompiler with CODEGENERATION transformation and a specific output file.

 

Example 3

Using the KielerCompiler with a non exisiting transformation which generates an error message.

  • No labels