Built from Makefile, launches with sound and black screen on macOS


I’m running into an odd issue, I’ve cloned the ioquake3/ioq3 repo on GitHub on a Mac running Mojave and I can run the Makefile via the make-macosx.sh file for x86_64 and it builds and compiles everything fine.

But when I run the resulting ioquake3.app Application, I have a black screen. I can hear the sound effects of the opening scene (the id logo crashing through the wall) and I can hear the sound effects of the menu just fine, but the screen is black.

I went to the website and downloaded the latest test build (like, minutes ago) and unzipped it and the ioquake3.app it contains runs just fine (after doing the security thing since it’s unsigned).

I went to the q3config file an turned on logging and compared in Beyond Compare and the only difference seems to be where it’s getting the renderer_opengl2_x86_64.dylib file from (the different locations of the downloaded versus compiled ioquake3.app/Contents/MacOS folder)

For fear that my development machine was screwed up somehow I did the same thing on another Mac that I’ve never done game development work from (moved the quake3 files into place, compiled from github via Makefile, downloaded latest test build) and I’m getting the same results - test build from the site runs fine, build from Makefile doesn’t).

Has anyone run into this? In theory the version I just built and the version I’ve just downloaded should be from the same source code (the latest) so my guess is something’s amiss in my build but I’m not sure what.

Really the only thing I can think of that might be happening different on my end might be that, contrary to the readme file, I don’t have older versions of the SDK installed. I wouldn’t think that would make a difference since I’m not trying to make a universal binary but I’m not sure what it could be.

Upgrade to SDL 2.0.9 to fix macOS Mojave SDK compatibility. Programs work if built against older macOS SDKs for whatever reason. https://bugzilla.libsdl.org/show_bug.cgi?id=4272


OK, finally getting back to looking at this and once I figured out how to make libSDL, I got it working.

However I noticed the resulting libSDL2-2.0.0.dylib file for 2.0.9 is about a quarter of the size of the 2.0.8 one there so I’m not sure if I built it correctly (missing architectures?).

In any event it works from a Makefile now on Mojave and I’ve also mostly updated the Xcode project for the latest code. It fails on every other build due to the presence or absence of the generated glsl files so I need to figure out what the build phase trick is there but in any event I’ve updated this fork here

Thanks again.

1 Like