Cloning the Repository
git clone email@example.com:lf-lang/lingua-franca.git cd lingua-franca git submodule update --init --recursive
Building from the Command Line
Command Line Tools
You can build the Lingua Franca compiler and other CLI tools with Gradle using
./gradlew clean buildAll.
There are scripts in
bin which you can use to run the compiler or other tools. For instance:
The Epoch IDE is in a separate repository. Follow the instructures there in the README file.
Lingua Franca comes with unit and integration tests. More details can be found here.
The unit tests can be run with Gradle using
./gradlew test --tests "org.lflang.tests.compiler.*".
All integration tests can be run with Gradle using
./gradlew test --tests "org.lflang.tests.runtime.*". By specifying the concrete test class, it is also possible to run only tests for a specific target. For instance the Python tests can be run with
./gradlew test --tests "org.lflang.tests.runtime.PythonTest.*". For convenience, there is also a script which can be used for running the integration tests for a specific target. For instance:
Sometimes it is useful to only run a single integration test. This can be done with the
runSingleTest Gradle task. For instance:
./gradlew runSingleTest --args test/C/src/Minimal.lf.
You will likely want to use an IDE for working with the code base. For development of the core tools, any IDE that integrates with gradle can be used. We recommend our IntelliJ setup. If you plan to contribute to the Epoch IDE, you should use the Oomph setup for Eclipse.