Sonoma?

Is is me ? Or is JUCE broken in Sonoma ?

I guess you mean compiling/developing on Sonoma.

At least our compiled binaries seems to be working on Sonoma. but Iā€™ve read reports here about SDK breaking changes.

1 Like

Thereā€™s the deprecation warning as I mentioned here that prevents juceaide being built: Deprecation warnings on macOS 14.0. This can be bypassed by simply removing that chunk of code and returning {} (assuming you donā€™t need to use that code for your app).


Iā€™m also getting an error from WebKit while building juceaide which appears to be using a type that no longer exists:

/Library/Developer/CommandLineTools/SDKs/MacOSX14.0.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKWebsiteDataStore.h:117:47: error: type argument 'nw_proxy_config_t' (aka 'nw_proxy_config *') is neither an Objective-C object nor a block type

This can be bypassed by removing #import <WebKit/WebKit.h> from juce_gui_basics.cpp (again, assuming you donā€™t need to use WebKit for your app).


Even then, once I actually manage to build my app Iā€™m getting uncaught exceptions (despite being thrown within a try-catch block), which suggests breaking ABI changes.

// libc++abi: terminating due to uncaught exception of type juce::JSONParser::ErrorException
// Despite the call stack including:

    try
    {
        result = JSONParser (text.getCharPointer()).parseObjectOrArray();
    }
    catch (const JSONParser::ErrorException& error)
    {
        return error.getResult();
    }

Iā€™ve yet to find a solution to this one.

Are you using the latest Sonoma/Xcode beta versions? With Sonoma beta 5 and Xcode beta 6 Iā€™m not seeing this when building juceaide or the DemoRunner.

The JSON issue looks a bit familiar - I was seeing something like that with an older Xcode beta on Ventura, so i suspect there may have been a compiler bug. If youā€™re not using the latest beta, itā€™s probably worth updating and checking whether the issue is still present.

Other than that, weā€™ve got a couple of fixes for deprecated APIs in Sonoma that should be out in the next day or two.

1 Like

Ahh, I was using homebrewed llvm, not Apple Clang. Switching to Apple clang does indeed fix that error!

Looks like I do have updates available since just a few days ago - will udpate and report back if anything changes.

2 Likes

Not seeing the uncaught exceptions now on the latest Sonoma and Xcode betas!

2 Likes

Awesome, Iā€™ll move over soon, excited about the new linker.

2 Likes

Thank you so much for the discussion !
My issue was with the actual recording of audio in my app, in runtime.
Canā€™t put my finger on the actual bug. Everything runs fine but no audio is being sent to file, nor to the continuous waveform displayā€¦

However I was using Xcode beta 5 not 6.
Iā€™m trying again for 2 projects today and will try to report some more specific information if I get any issues. Iā€™m just glad someoneā€™s on the bleeding edge like me !

Thank you again !

1 Like

Hi again,

Well I tried again this morning with XCode 15 beta 6 and latest develop branch from JUCE.

Here are some strange messages iā€™m getting when I run my GUI app:

The **CGSWindowShmemCreateWithPort failed on port 0**

**67,587 HALC_ProxyIOContext.cpp:1,329 HALC_ProxyIOContext::IOWorkLoop: skipping cycle due to overload**

**66,571 HALC_ProxyIOContext.cpp:1,329 HALC_ProxyIOContext::IOWorkLoop: skipping cycle due to overload**

**Metal failed to load render pipeline: pipeline=PBGRAXmw_BclrA3Xhfc sdk=23A312**

**Failed to find reflection in binary archives**

The problem is Iā€™m getting the app running but no sound gets to the file input when I hit record.

My getNextAudioBlock function gets buffers, but when I unmute the track, I hear a kind of feedbackā€¦

Any thoughts will be welcome.
Thanks,
Jacques

I tried the demorunner demos for fft and the scrolling waveform and everything works.
Iā€™m baffled.

Well I apologize, because it appears my app works fine on Sonoma in XCode 15 beta 6 with JUCE 6.1.6
Will keep investigating, with the help of my lead programmerā€¦

Hereā€™s something with XCode 15 (Beta 6)

Getting a ā€œCycle Insideā€¦ ā€ in a brand new plugin created with JUCE 7.0.6
That is when I build for All. Standalone works.

Any thoughts ?

1 Like

Hey Hi again

Just tried with Xcode 15 beta 7, develop branch of JUCE, and latest Sonoma Beta and still have this strange ā€œCycle Insideā€¦ā€ error message and wonā€™t build.

Do you suppose it could be a JUCE issue ?

Jacques

1 Like

Just wanted to report all happy so far on Xcode 15 beta 7 and JUCE develop.

The only minor glitch was having to downgrade target_compile_features from cxx_std_23 to cxx_std_20 otherwise I get an error in MacOSX14.sdkā€™s version of algorithm.

In file included from JUCE/modules/juce_events/juce_events.mm:23:
In file included from JUCE/modules/juce_events/juce_events.cpp:42:
In file included from JUCE/modules/juce_events/juce_events.h:52:
In file included from JUCE/modules/juce_core/juce_core.h:204:
In file included from JUCE/modules/juce_core/system/juce_StandardHeader.h:50:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/include/c++/v1/algorithm:1747:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/include/c++/v1/__algorithm/inplace_merge.h:28:
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/include/c++/v1/__memory/unique_ptr.h:63:19: error: invalid application of 'sizeof' to an incomplete type 'juce::JUCEApplicationBase::MultipleInstanceHandler'
    static_assert(sizeof(_Tp) >= 0, "cannot delete an incomplete type");
                  ^~~~~~~~~~~
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/include/c++/v1/__memory/unique_ptr.h:297:7: note: in instantiation of member function 'std::default_delete<juce::JUCEApplicationBase::MultipleInstanceHandler>::operator()' requested here
      __ptr_.second()(__tmp);
      ^
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/include/c++/v1/__memory/unique_ptr.h:263:75: note: in instantiation of member function 'std::unique_ptr<juce::JUCEApplicationBase::MultipleInstanceHandler>::reset' requested here
  _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_SINCE_CXX23 ~unique_ptr() { reset(); }
                                                                          ^
/Users/sudara/projects/sinemachine/JUCE/modules/juce_events/messages/juce_ApplicationBase.cpp:33:22: note: in instantiation of member function 'std::unique_ptr<juce::JUCEApplicationBase::MultipleInstanceHandler>::~unique_ptr' requested here
JUCEApplicationBase::JUCEApplicationBase()
                     ^
/Users/sudara/projects/sinemachine/JUCE/modules/juce_events/messages/juce_ApplicationBase.h:304:12: note: forward declaration of 'juce::JUCEApplicationBase::MultipleInstanceHandler'
    struct MultipleInstanceHandler;
2 Likes

Iā€™m facing the same issue trying to generate from an older project in the latest JUCE and Xcode15. However, I think that creating a new plugin project in the new JUCE produced a buildable plugin. I have not pinpointed the exact issue yet.

Unfortunately I did try to create a brand new plugin with JUCE 7.0.7 and I face the same issue.
Wether or not itā€™s a JUCE issue I couldnā€™t say.

Oh and most web notes on the issue mention some things about the build phases order.
I suspect it may have something to do with the generation of the Xcode project in JUCE.
What a quaint problemā€¦

Weā€™re looking at the ā€˜Cycle Insideā€™ problem at the moment. As youā€™ve suggested weā€™re going to need to change how we generate Xcode projects and the current Apple docs are not up to speed with what the latest Xcode is doing.

4 Likes

I do not envy your job at the moment ! :wink:
Keeping up with Apple is a challenge.
Thank you so much for your dedication.

3 Likes

Apple:

The behavior and resulting limitations you describe are by design.

:rofl:

Edit:
Joke aside, the interesting step in Xcode 15 is a concurrent linker which should speed things up. so maybe this is related (but I donā€™t dare to lookā€¦)

1 Like