I have a project that builds without issue using:
JUCE 6.0.1
MacOS 11.7.9
XCode 13.2.1
The project is stored on GitHub. I have a new M2 Mac running Sonoma 14.5 and XCode 15.4.
I download the same code and now get compile errors at:
‘jassertfalse; //Unrecognized instruction mnemonic, did you mean…’
Incidentally, I get the same compile error when I build the HelloWorldDemo from a fresh JUCE install.
Can you be more specific? I downloaded https://api.juce.com/api/v1/download/juce/latest/osx, the 8.0 version of JUCE and had the same problem. Is there a setting within that that I’m missing? Or is there a different download? (My problem is compile-time errors, not run-time.)
Did you completely replace the old v6 version of JUCE (source files and Projucer.app)? My guess is that the old files are still being used for some reason.
I’m still stuck but I think that I’m not describing my problem adequately. This project was inherited from another developer who apparently only used the Projucer.app in the early stages.
On my old Mac, it compiles without error by opening XCode and loading the .xcodeproj file directly. That version is using JUCE 6.0.1.
When I download the code from GitHub I’m using exactly the code that works on the old Macbook. But on the M2 Mac, the build fails w/ the compile error at jassertfalse (among other errors). It’s using the same .xcodeproj file and all the same source code.
I dumped my env variables and don’t see anything obviously related to JUCE.
I don’t particularly need to upgrade JUCE to 8.0.1.
JUCE 6.0.1 was released before the first Arm Mac, so it assumes that all macOS builds will target Intel. It doesn’t support arm64 macOS. If you want to target arm64 macOS natively, then you’ll need to use a newer version of JUCE that includes support, so 6.1.0 or newer.
To update JUCE, you’ll need to replace all the JUCE sources with newer versions, then resave the project using a version of the Projucer that matches the JUCE version - it’s normally safest to build your own copy of the Projucer using the same set of JUCE sources. You can find project files for the Projucer in extras/Projucer/Builds.