Command-line reference
The launcher, the inspection modes and the prefix commands.
The examples run from the source folder with Raven built in build/native/raven.
Run a program
raven --run-process --execution=native [--timeout-ms=N] [--desktop=wayland] [--stdio=inherit] program.exe [library.dll ...] [-- argument ...]
| Option | Meaning |
|---|---|
--run-process |
Start a Windows process |
--execution=native |
Run its code directly on the CPU |
--timeout-ms=N |
How long it may run, 1 to 86400000 ms; 5000 by default |
--desktop=wayland |
Show its windows on your Wayland desktop |
--stdio=inherit |
Connect it to your terminal |
library.dll |
Extra libraries to load with the program |
-- |
Everything after it goes to the program |
The options come in the order above. Quote paths with spaces:
build/native/raven --run-process --execution=native \
--timeout-ms=600000 --desktop=wayland --stdio=inherit \
"/path/to/My App.exe" -- "argument with spaces"
Inspect an executable
build/native/raven --inspect program.exe
build/native/raven --inspect-imports program.exe
build/native/raven --inspect-exports library.dll
build/native/raven --inspect-delay-imports program.exe
build/native/raven --inspect-resources program.exe
They print the headers, the imported and exported functions, the delay-loaded libraries and the resources of a PE file. --inspect-imports is the quickest way to see what a program needs.
Loader modes
raven --map-image program.exe [base-address]
raven --dump-image program.exe [base-address]
raven --bind-imports program.exe library.dll ...
raven --run-entry --execution=native program.exe
raven --run-modules --execution=native program.exe library.dll ...
These lower-level modes are for working on Raven itself; applications use --run-process.
Snapshots
raven --snapshot-prefix [label]
raven --list-snapshots
raven --restore-prefix [snapshot-name]
They act on the prefix in RAVEN_PREFIX, or the default one. Without a name, --restore-prefix restores the newest snapshot. See prefixes and snapshots.
Environment
| Variable | Role |
|---|---|
RAVEN_PREFIX |
The prefix to use |
HOME |
Where the default prefix lives |
WAYLAND_DISPLAY |
Your Wayland session |
XDG_RUNTIME_DIR |
Your session’s runtime folder |
RAVEN_TESTDATA_DIR |
Where tests keep generated and downloaded programs |