Skip to content

jacg/explore-G4

Repository files navigation

Install and Test built with nix

TLDR

just     # (build, if necessary, and) run the tests
just run # (build, if necessary, and) run the default model in batch mode
just interact # (build ... and) load the default model in interactive mode
just interact nema7-model      # load nema7-model in interactive mode
just run nema7-model nema7-run # load nema7-model and run nema7-run in batch mode
just list-models  # list available first arguments for `just run/interact`
just list-runs    # list available second arguments for `just run`
just -l  # list all recipes
just test <pattern>         # Run selected tests
just test <pattern> <flags> # Run selected tests with extra catch2 flags
just test-all       <flags> # Run      all tests with extra catch2 flags

Caveats

Dependency management with Nix

The above instructions assume that you have the required dependencies installed and configured.

This is done automatically when you cd into the project's directory, if you have installed the Nix package manager and direnv.

Clang developer tools

Clang developer tools should largely work out of the box in the Nix-provided environment. Crucially, they require some knowledge about how the project is combined. This information is provided in compile_commands.json which is automatically generated by CMake (unless you override the setting of CMAKE_EXPORT_COMPILE_COMMANDS).

TODO: describe which tools are available, what they can do for you, and how to use them.