Skip to content

Latest commit

 

History

History
70 lines (45 loc) · 3.07 KB

installationInstructions.md

File metadata and controls

70 lines (45 loc) · 3.07 KB

Installing and running FRET

Dependencies

  • NodeJS (use any version between v16.16.x - v20.19.x, see instructions here)
  • Python (use any version between v3.10.x - v3.13.x)
  • gcc, g++, make
  • Ubuntu users, ensure that the following packages are installed:
    • Ubuntu 24.04 or later: libgtk-3-0t64 libdrm2 libgbm1 libnss3 libx11-xcb1 libasound2t64
    • Older than Ubuntu 24.04: libgtk-3.0 libdrm2 libgbm1 libnss3 libx11-xcb1 libasound2
  • (Optional) NuSMV
  • (Optional) JKind
  • (Optional) Kind 2
  • (Optional) Z3

Install and Run

  • Here are the four simple steps to install and run FRET on Linux and MacOS systems:

    1. git clone https://github.com/NASA-SW-VnV/fret.git
    2. cd fret/fret-electron
    3. npm run fret-install
    4. npm start
  • Alternatively, for MacOS or Linux users, we provide means to build an executable natively or through Docker. See Building executables.

  • For the installation of FRET on Windows see our Windows installation guide.

  • If you run into installation issues, check the Troubleshooting section.

  • FRET developers, check the Developer's guide.

Notes

Note: To run the LTLSIM simulator, a NuSMV (see http://nusmv.fbk.eu/) installation is required. Please make sure that the NuSMV binaries directory is added to the PATH environment variable. Additionally, please add $PATH_TO_FRET/fret/tools/LTLSIM/ltlsim-core/simulator to the PATH environment variable. Note that $PATH_TO_FRET is the path location where the FRET git repo was cloned (and not the path to the FRET binary).

Note: To perform realizability checking, additional dependencies must be installed. Read the realizability checking Dependencies section for details.

Note: To generate test cases or test obligations, a NuSMV (see http://nusmv.fbk.eu/) installation is required.

How to install NodeJS

The easiest official way is through the node version manager (nvm):

# Download and install nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.2/install.sh | bash

# in lieu of restarting the shell
\. "$HOME/.nvm/nvm.sh"

# Download and install Node.js:
nvm install 20

# Verify the Node.js version:
node -v # Should print "v20.19.0".
nvm current # Should print "v20.19.0".

# Verify npm version:
npm -v # Should print "10.8.2".

Note: Since different projects might require different node versions, nvm (or fnm) provide an easy way to switch between previously installed node versions, e.g., by nvm use vA.B.C.

Here is the NodeJS website. If you download a NodeJS prebuild, please make sure that it is in the v16.16.x - v20.19.x version interval.

Back to FRET home page

Back to the FRET README