Skip to content

Add MinGW-w64 support#24

Draft
eawd123wadd4354as243df wants to merge 14 commits intosaturn-xvi:mainfrom
eawd123wadd4354as243df:mingw-w64
Draft

Add MinGW-w64 support#24
eawd123wadd4354as243df wants to merge 14 commits intosaturn-xvi:mainfrom
eawd123wadd4354as243df:mingw-w64

Conversation

@eawd123wadd4354as243df
Copy link
Copy Markdown

Adds support for building with MinGW-w64.
This is WIP, as linking still fails.

Open TODOs:

  • Fix linking issues with missing D3D in imgui
  • Blocked: Check if this works on windows, and if MSVC still works.
  • Document build requirements:
    • Powershell core installed on system (on linux, I think on windows it is installed automatically)
    • MinGW-w64 (obv)

ewe added 14 commits January 6, 2026 20:10
- mingw library capitalization
- gcc/msvc differences
  - macro ## token joins
  - c_str
  - ui64 vs ll
-> this could be changing behaviour, todo check
I'll take hackiest way to implement this for 200, alex (-> make it future me's problem)
yay i get to write a bug report i think
- added -fpermissive flag
  - This flag should be removed once I figure out what the expected behaviour is.
- removed directories included by default by mingw
- added ixwebsocket package
  - forgot this somehow
  - special cased, to lowercase the required Crypt32.dll, as linux is case-sensitive.
@eawd123wadd4354as243df
Copy link
Copy Markdown
Author

I chose MinGW as it makes it easy to link windows headers, but once it builds I will attempt to migrate to clang as well.
Do we want to keep supporting MSVC / the VS build system, AND clang AND MinGW?

@fairangelica
Copy link
Copy Markdown
Collaborator

I personally am certainly in favor of dropping MSVC and the VS Build System, as both Clang and CMake are alternatives that are natively supported in Visual Studio ("C++ Clang Tools for Windows" and "C++ CMake for Windows" exist as components one can install easily in the VS Installer)

I would love MingGW support, but we would first need to move to CMake and Clang, as the VS Build System gets awkward when trying to integrate that into the XML config file.

But in the end it is in the discretion of @BreakingBread0 to veto this ^^

@fairangelica
Copy link
Copy Markdown
Collaborator

I chose MinGW as it makes it easy to link windows headers, but once it builds I will attempt to migrate to clang as well.

also, might I interest you in checking out MinGW-LLVM? It might be nicer to move to that as I already worked a bit on the possible Clang migration ^^

@BreakingBread0
Copy link
Copy Markdown
Member

Oh yeah im definitely in favour of switching from MSVC in the long term. That compiler is.... interesting to say the least and I had to fight it a few times with this small project already hahaha

Did you get further with compiling this project with clang/mingw? I can adapt this to @Hazno-dev 's branch

@Twig6943
Copy link
Copy Markdown

Twig6943 commented Apr 6, 2026

Yo, bumping this.

I can try doing something like this if you're interested @BreakingBread0

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.

4 participants