-
-
Notifications
You must be signed in to change notification settings - Fork 12.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
projectm 4.1.4 #198257
base: master
Are you sure you want to change the base?
projectm 4.1.4 #198257
Conversation
For v4, we have to change the build process to use |
Yeah dw, I've managed to get a reliable build process, I've asked for a test program from them since I don't know much the project |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. To keep this pull request open, add a |
not stale. in progress |
9e5121c
to
4fcb9d9
Compare
I have tried to pass the test but got an error, |
Can't currently contribute to fixing the tests, I do not have access to my main machine (motherboard died) with the environment I created and it would probably take hours to get everything working. I'll get back to this once I get my machine back. |
I got my computer back, but my brew installation was wiped, so it's going to take me a while to contribute again. |
08d8682
to
f6153e2
Compare
280fd66
to
c8bb1f9
Compare
|
I'm not sure the OpenGL that ships with macOS has a .pc file, as macOS does not include pkg-config by default. |
I've found myself less and less motivated to try to get back at this PR again, so unless someone manifests themselves to take it over and complete the work I'll be closing it in a few days. |
I added a commit that resolves the |
c8bb1f9
to
5f0ddc2
Compare
5f0ddc2
to
e8f67ce
Compare
pinging @kblaschke since he's the owner of the project and probably knows what's wrong with this |
macOS seems to print: " projectM instance creation failed: " |
Yup, my bad! Issue was fixed in master long ago (using a function introduced in core OpenGL 4.2), but I seemingly failed to backport the fix to the 4.1 release branch. Did that now, opened PR projectM-visualizer/projectm#866 and will create a 4.1.4 release once this fix is merged. |
I've just released a fixed version: https://github.com/projectM-visualizer/projectm/releases/tag/v4.1.4 If you bump the brew formula directly to 4.1.4, skipping 4.1.3, it should now compile & run properly on macOS/OpenGL 4.1. |
Note that this issue here might also affect some users when using pkgconfig to resolve package dependencies for projectM: projectM-visualizer/projectm#868 I've only seen this while adding a vcpkg port for projectm. A fix for this will be released in v4.1.5, probably due in early March. If you already want to patch it in the formula, just apply this diff here: --- src/libprojectM/CMakeLists.txt 2025-01-24 16:19:05.235818993 +0100
+++ src/libprojectM/CMakeLists.txt 2025-01-24 16:18:52.445824000 +0100
@@ -212,7 +212,9 @@
set(PKGCONFIG_PACKAGE_NAME "${PROJECTM_LIBRARY_BASE_OUTPUT_NAME}")
set(PKGCONFIG_PACKAGE_DESCRIPTION "projectM Music Visualizer")
- set(PKGCONFIG_PACKAGE_REQUIREMENTS_ALL "opengl")
+ if(NOT APPLE)
+ set(PKGCONFIG_PACKAGE_REQUIREMENTS_ALL "opengl")
+ endif()
generate_pkg_config_files(projectM ${PROJECTM_LIBRARY_BASE_OUTPUT_NAME})
|
I'll add this later, currently I'm sick and it's exam period for me so I'm kinda busy |
Linux now passes, but doesn't actually run the executable because it's headless. macOS still fails with:
|
projectm_handle pm = projectm_create(); | ||
if (pm == NULL) | ||
{ | ||
fprintf(stderr, "projectM instance creation failed: %s", SDL_GetError()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@kblaschke is this the correct function to get information on the project-m failure here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not really, since projectM internally doesn't use SDL, this won't give you a usable feedback, if any.
We're planning to add a proper logging/debug API for the v4.2 release, which will make debugging such issues much easier. So for now, the usual GL things apply:
- Check if the GL context created by SDL is valid and made current (via
SDL_GL_MakeCurrent()
) - Make sure the GL context's core profile is set to at least 3.3 core before creating the context/window via:
AFAIR macOS by default creates a 1.1 or 2.x context for compatibility.
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 3); SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_CORE);
- Check the GL version (3.3 or higher) and shading language (3.30 or higher) via
glGetString(GL_VERSION)
andglGetString(GL_SHADING_LANGUAGE_VERSION)
- Make sure that the terminal the homebrew test script runs in is attached to a UI session on macOS (e.g. not run via SSH)
If all these checks pass and the problem persists, it can help compiling projectM with the DEBUG
and MILKDROP_PRESET_DEBUG
preprocessor defines set, which will enable additional output to stdout
, like shader compilation errors etc. - those messages will later be available over the new logging API in v4.2.
Created with
brew bump-formula-pr
.