Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions omvll/introduction/getting-started/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -234,6 +234,31 @@ OMVLL_PYTHONPATH: "<mirror of $OMVLL_PYTHONPATH>"
OMVLL_CONFIG: "<mirror of $OMVLL_CONFIG>"
```

## Logging

During compilation, O-MVLL produces log files to help you inspect what was configured and which passes were applied.
By default, these logs are written into a folder named `omvll-logs` where your compiler has been invoked.

If `output_folder` is set, the logs folder is created at:

```bash
<output_folder>/omvll-logs
```

Inside `omvll-logs`, you will find:

**omvll-init.log**
Contains the full initialization and setup logs for the tool. This is the first place to look if you want to verify configuration, or general startup behavior.

**omvll-module-logs/<architecture>/<moduleName>.log**
A per-module log with detailed information about the obfuscation pipeline. These files describe which passes were applied to each module and include more granular pass-level output.

{{< alert type="dark" icon="fa-regular fa-face-thinking" >}}
Log files are generated per module, not per compilation unit.
This means the number of log files may be lower than the number of compiled source files.
We’ve particularly observed this behaviour in Xcode builds, where BATCH_MODE is enabled by default, causing multiple compilation units to be grouped into fewer modules.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd be more specific here, and mention Swift, WMO (and use the full name in BATCH_MODE). explain what happens in each case and, if someone has trouble and need more details, how they can go back to 1 log per source file.

{{</ alert >}}

## Android NDK (Linux and MacOS)

The toolchain provided by the Android NDK is based on LLVM and **linked with `libc++`**.
Expand Down