Skip to content
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

MacOS build fails #145

Open
vmarkushin opened this issue Nov 22, 2020 · 3 comments
Open

MacOS build fails #145

vmarkushin opened this issue Nov 22, 2020 · 3 comments

Comments

@vmarkushin
Copy link

I'm getting strange errors when compiling on macOS:

/Users/vmark/dev/Bonzomatic/external/glfw/src/cocoa_init.m:77:5: error: use of undeclared identifier 'NSString'; did you mean 'cString'?
    NSString* appName = nil;
    ^~~~~~~~
    cString

Not sure what can cause this, so I leave the full build.log here.

System info:

  • macOS Catalina 10.15.7
  • Xcode 12.2, build version 12B45b
  • AppleClang 12.0.0.12000032
@Gargaj
Copy link
Owner

Gargaj commented Nov 22, 2020

@alkama

@sacredbanana
Copy link
Contributor

I'll have a look now. I actually have upgraded from Catalina to Big Sur so I'll be curious to see how friendly Big Sur is to Bonzomatic compilation and execution. It could do with a fresh recompile anyway since compiling with the latest Xcode on Big Sur will produce a binary that is optimised for both x86 and the new Apple Silicon M1 ARM architecture

@sacredbanana
Copy link
Contributor

So, the undeclared NSString thing is just a side effect of the main cause. Since Apple has deprecated OpenGL, certain OpenGL variables and methods are no longer available in the Catalina and higher SDK. One such example of a variable that this project needs is no longer available: https://developer.apple.com/documentation/appkit/nsopenglpfaalphasize
Catalina is 10.15 and Big Sur is 11.0. It shows this variable is in the SDK until 10.14. This basially means you'll need Mojave or earlier to compile but I am happy to report Bonzomatic still runs fine on Big Sur.

It is actually GLFW using the no longer available variables and methods. Perhaps there's a new version of GLFW that works? Are we interested in updaring that or have we held back for a reason?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants