mirror of
https://github.com/decompals/wibo.git
synced 2025-12-12 14:46:09 +00:00
41f8388bac4cde1d5df9005b51fa6f6b1bf99ac0
wibo
A minimal, low-fuss wrapper that can run really simple command-line 32-bit Windows binaries on Linux - with less faff and fewer dependencies than WINE.
Don't run this on any untrusted executables, I implore you. (Or probably just don't run it at all... :p)
Building
cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Debug
cmake --build build --target wibo
Set -DCMAKE_BUILD_TYPE=Release to produce an optimized binary instead.
Running
./build/wibo /path/to/program.exe [arguments...]
Supported command line options:
--help: Print usage information.-D,--debug: Enable shim debug logging (equivalent toWIBO_DEBUG=1).-C DIR,--chdir DIR,--chdir=DIR: Change toDIRbefore running the guest program.--cmdline STRING,--cmdline=STRING: UseSTRINGas the exact guest command line. (Including the program name as the first argument.)--: Stop option parsing; following arguments are interpreted as the exact guest command line. (Including the program name as the first argument.)
Tests
Self-checking Windows fixtures run through CTest. They require a 32-bit MinGW cross toolchain (i686-w64-mingw32-gcc and i686-w64-mingw32-windres).
With the toolchain installed:
cmake -B build -DBUILD_TESTING=ON
cmake --build build
ctest --test-dir build --output-on-failure
This will cross-compile the fixture executables, run them through wibo, and fail if any WinAPI expectations are not met.
Rough to-do list:
- Implement more APIs
Related projects:
Languages
C++
73.3%
C
17.9%
Python
4.7%
CMake
2.8%
Assembly
1.1%
Other
0.2%