One common issue I see online is that people don't always have the package for SDL that matches mingw. I see a lot of complaints about the problems but no one has a general solution.

32-bit windows exe:
mingw-w64-i686-gcc
mingw-w64-i686-sdl3

64-bit windows exe:
mingw-w64-x86_64-gcc
mingw-w64-x86_64-sdl3

64-bit windows ucrt (for when your using native windows cmd):
mingw-w64-ucrt-x86_64-gcc
mingw-w64-ucrt-x86_64-sdl3

#programming #solodev #devlog #sdl3

The most impressive port I’ve seen this year so far: SDL3 for MS-freaking-DOS ❤️

https://www.generationamiga.com/2026/04/13/sdl3-dos-port-brings-modern-cross-platform-development-to-classic-ms-dos/

#SDL #SDL3

SDL3 DOS port brings modern cross-platform development to classic MS-DOS

SDL3 has gained DOS support, and the impressive part is not just that it works, but how much of the platform is already covered. Thanks to work from multipl

GenerationAmiga.com

Today I ran into two issues with the SDL3 documentation.

First is the intro to mingw. It guides the user to ucrt. Works great for x86_64 but the i386 libraries don't exist. Compiling with -m32 everything breaks.

So you might as well compile SDL yourself. Great... except you have to know the secret to debloat the executable.

Check this link out for more info:
https://voxelmanip.se/2024/12/14/sdl-lean-and-mean/

#programming #sdl3 #devlog #solodev

SDL_LEAN_AND_MEAN

As storage space becomes larger and larger even on the most modest of phones and bandwidth is becoming evermore plentiful, software tends to become larger in size over time as the necessity to optimise filesizes decreases. But there are also people who wish to reverse the trend by trying to conserve the amount of space their resulting program becomes through going closer to the metal or finding clever ways to cut down the size of their dependencies. SDL is a library that aims to provide cross-platform low level access to input, audio, graphics and more that will just work across all supported platforms, for games and other multimedia programs. While the library originally had humble beginnings it has since grown with size as new features that while may be useful to some, are not something everyone would utilise when using SDL. Thankfully there are countless build options you can use to control what gets built with SDL but there is also the rather funnily named and undocumented define, by the name of SDL_LEAN_AND_MEAN.

ROllerozxa

to sum up my past two weeks on my personal projects (aka why I've gotten even less done than normal)

#sdl3 #imgui #fltk #programming #indiedev #gamedev #tooldev

Multiple parties have come together to create a new fairly complete #DOS port of #SDL3 (via #DJGPP)

#MSDOS #VESA #RetroComputing #RetroGaming #SDL

https://github.com/libsdl-org/SDL/pull/15377

Add DOS platform support (DJGPP) by AJenbo · Pull Request #15377 · libsdl-org/SDL

This is the combined work of @icculus @madebr @glebm @jayschwa @ccawley2011 and me rounding it off with stability fixes and missing features, thanks to everyone for pitching in. This is a fairly c...

GitHub

Oh, #SDL3 rust bindings are developed on #Codeberg
🎉

(https://codeberg.org/maia/sdl3-sys-rs)

sdl3-sys-rs

Low level Rust bindings for SDL 3

Codeberg.org

So some of you might write a "failure to initialize SDL" conditional like this...

if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
{ printf("failure"); }

This isn't the right and proper way because SDL_Init returns a boolean.

I thought "Now is a great time to do the right thing."

So I wrote this, went to sleep and lost hours of my life debugging. See if you can spot the problem.

if( SDL_Init( SDL_INIT_VIDEO ))
{ printf("failure"); }

#programming #sdl3 #devlog #solodev

I have an important update!

The trick I used to get Make to compile the static libraries for SDL3 without CMake only seems to work for windows.

As per the readme, the linux static sdl3 library does not appear to exist. If you're a linux user like me, you'll probably be used to shared libraries anyway.

#programming #sdl3 #devlog #solodev