Skip to content

fix: cross-platform compilation fixes for Arch GCC 15.2 / MinGW toolchains#139

Open
TGJLS wants to merge 2 commits into
Adaptix-Framework:devfrom
TGJLS:compile-fixes-pr
Open

fix: cross-platform compilation fixes for Arch GCC 15.2 / MinGW toolchains#139
TGJLS wants to merge 2 commits into
Adaptix-Framework:devfrom
TGJLS:compile-fixes-pr

Conversation

@TGJLS
Copy link
Copy Markdown

@TGJLS TGJLS commented Apr 20, 2026

Fixes compilation errors on Arch Linux GCC 15.2.0 with MinGW cross-compilers and ensures the project builds cleanly across Ubuntu, Kali, Arch, and macOS. Also adds a CI workflow and Dockerized build for ongoing cross-platform testing.

Source fixes

  • _include/bofdefs.h, SAR-BOF/EdrEnum-BOF/bofdefs.h: add <objbase.h> to fix BEGIN_INTERFACE/IUnknown/COINIT_*/LPSTREAM errors on newer GCC
  • Creds-BOF/cookie-monster/cookie-monster-bof.c: add <objbase.h>
  • Elevation-BOF/potato-dcom/DCOMPotato.cpp, Elevation-BOF/uac_sspi/SspiUacBypassBOF.cpp, Postex-BOF/ScreenshotBOF/entry.c, Postex-BOF/firewallrule/addfirewallrule.c: add <objbase.h>
  • SAL-BOF/arp/arp.c, ipconfig/ipconfig.c, netstat/netstat.c, routeprint/routeprint.c: add <objbase.h>
  • Execution-BOF/No-Consolation/include/utils.h: add <limits.h> for LONG_MAX (removed from implicit includes in GCC 15)
  • Creds-BOF/nanodump/: add missing COM/WinAPI headers; update Makefile for MinGW toolchain compatibility and remove unnecessary .exe builds

CI

  • .github/workflows/build.yml: three jobs — build-linux matrix (ubuntu:latest, kalilinux/kali-rolling, archlinux:latest), build-macos (macos-14), and docker-verify (bare ubuntu-latest, runs make docker-build)

Gitignore

  • Add .planning and .claude to .gitignore

Closes: #129

TGJLS and others added 2 commits April 20, 2026 22:22
…hains

Fixes compilation errors on Arch Linux GCC 15.2.0 with MinGW cross-compilers
and ensures the project builds cleanly across Ubuntu, Kali, Arch, and macOS.
Also adds a CI workflow and Dockerized build for ongoing cross-platform testing.

## Source fixes

- `_include/bofdefs.h`, `SAR-BOF/EdrEnum-BOF/bofdefs.h`: add `<objbase.h>` to
  fix `BEGIN_INTERFACE`/`IUnknown`/`COINIT_*`/`LPSTREAM` errors on newer GCC
- `Creds-BOF/cookie-monster/cookie-monster-bof.c`: add `<objbase.h>`
- `Elevation-BOF/potato-dcom/DCOMPotato.cpp`,
  `Elevation-BOF/uac_sspi/SspiUacBypassBOF.cpp`,
  `Postex-BOF/ScreenshotBOF/entry.c`,
  `Postex-BOF/firewallrule/addfirewallrule.c`: add `<objbase.h>`
- `SAL-BOF/arp/arp.c`, `ipconfig/ipconfig.c`, `netstat/netstat.c`,
  `routeprint/routeprint.c`: add `<objbase.h>`
- `Execution-BOF/No-Consolation/include/utils.h`: add `<limits.h>` for
  `LONG_MAX` (removed from implicit includes in GCC 15)
- `Creds-BOF/nanodump/`: add missing COM/WinAPI headers; update Makefile for
  MinGW toolchain compatibility

## CI

- `.github/workflows/build.yml`: three jobs — `build-linux` matrix
  (ubuntu:latest, kalilinux/kali-rolling, archlinux:latest), `build-macos`
  (macos-14), and `docker-verify` (bare ubuntu-latest, runs `make docker-build`)

## Gitignore

- Add `.planning` and `.claude` to `.gitignore`

Closes: Adaptix-Framework#129

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The main nanodump.x64.exe and nanodump.x86.exe targets were removed in
the compile-fixes commit. These are standalone executables for running
nanodump without a C2 beacon — independent of and not required for BOF
functionality, but genuinely useful. Restore them.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@TGJLS TGJLS force-pushed the compile-fixes-pr branch from 2d61af1 to e240864 Compare May 2, 2026 06:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant