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

Build natively for Apple Silicon #560

Open
spinlud opened this issue Jun 30, 2023 · 7 comments
Open

Build natively for Apple Silicon #560

spinlud opened this issue Jun 30, 2023 · 7 comments

Comments

@spinlud
Copy link

spinlud commented Jun 30, 2023

Has anyone been able to build Ctrlr natively for Apple Silicon?

@mattavent
Copy link

Project needs a lot of work to bring it up to modern C++ standard. I think a rewrite is probably quicker

@dobo365
Copy link

dobo365 commented Jul 2, 2023

There are somewhere some 5.6.23 versions made for M1 but I have never been able to use/test them as I don't have a M1...
Waiting for an emulation for PC Windows.
But I have those M1 versions and can provide them.

@mattavent
Copy link

Is there a fork somewhere for M1 builds?

@maxtr0ne
Copy link

maxtr0ne commented Jul 4, 2023

unsure, but i am going to test this one this week:

https://www.godlike.com.au/index.php?id=361

@midibox
Copy link

midibox commented Oct 19, 2023

By following these (great!) instructions we will still get the same errors related to expired usage of std::auto_ptr at many (!!!) places.

However, I got the build working without changing any source files by switching back to C++14 standard in the project build settings under "Apple Clang - Language" -> "C Language dialect"

Unfortunately this results into a new dilemma: JUCE 6.0.8 version which is part of the repo will throw assertions during runtime because it isn't prepared for newer MacOS versions. And if we switch to a newer JUCE 7.0.* version build will fail because new JUCE versions expect at least C++17

So far I got Ctrlr running on a M2 Mac with MacOS 14 (Sonoma) by compiling the Release variant, because it disables assertions - this seems to work anyhow.

However, a clean & future proven solution would require a proper migration to C++17

Best Regards, Thorsten.

@synthmania67
Copy link

Hi Midibox, I tried today to build a VST3 version because of the wrong name (instigator/Ctrlr). But with Xcode the build fails.
I´ve installed Juce 6.05 and Xcode 13.4.1 with Monterey on a MAC M1.
How did you do that with your system?

@jounih
Copy link

jounih commented Sep 18, 2024

By following these (great!) instructions we will still get the same errors related to expired usage of std::auto_ptr at many (!!!) places.

However, I got the build working without changing any source files by switching back to C++14 standard in the project build settings under "Apple Clang - Language" -> "C Language dialect"

Unfortunately this results into a new dilemma: JUCE 6.0.8 version which is part of the repo will throw assertions during runtime because it isn't prepared for newer MacOS versions. And if we switch to a newer JUCE 7.0.* version build will fail because new JUCE versions expect at least C++17

So far I got Ctrlr running on a M2 Mac with MacOS 14 (Sonoma) by compiling the Release variant, because it disables assertions - this seems to work anyhow.

However, a clean & future proven solution would require a proper migration to C++17

Best Regards, Thorsten.

Hey Thorsten,

Good info. Would you be able to to share the compiled Release variant binary you got working on Apple Silicon?

Can it also export AudioUnit components of panels that work with Apple Silicon?

Thanks!

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

No branches or pull requests

7 participants