# MacOS older deployment targets, missing symbols

**URL:** <https://forum.juce.com/t/macos-older-deployment-targets-missing-symbols/58346>\
**Category:** General JUCE discussion\
**Created:** [October 15, 2023, 4:43pm UTC](https://forum.juce.com/t/macos-older-deployment-targets-missing-symbols/58346 "2023-10-15T16:43:59Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![john41879](https://avatars.discourse-cdn.com/v4/letter/j/73ab20/32.png) [@john41879](https://forum.juce.com/u/john41879)\
**Post date:** [October 15, 2023, 4:43pm UTC](https://forum.juce.com/t/macos-older-deployment-targets-missing-symbols/58346/1 "2023-10-15T16:43:59Z")

</div>

Dear all,

I am targeting MacOS 10.14 Mojave for MyPlugin project which I am building using XCode 15 on MacOS Sonoma. I have issues creating **Release** build:

> Termination Reason: DYLD, [0x4] Symbol missing  
> Application Specific Information:  
> dyld: launch, loading dependent libraries  
> Dyld Error Message:  
> Symbol not found: **\_kMIDIPropertyProtocolID**  
> Referenced from: /Users/USER/Desktop/_/MyPlugin.app/Contents/MacOS/MyPlugin  
> Expected in: /System/Library/Frameworks/CoreMIDI.framework/Versions/A/ **CoreMIDI**  
> in /Users/USER/Desktop/_/MyPlugin.app/Contents/MacOS/MyPlugin

If I create Debug build then this error **doesn’t appear** at all and I can run MyPlugin. I have compared Debug and Release build configurations within XCode and I cant notice anything suspicious which might cause that error with Release build.

Does anyone has any idea?

Thank you in advance

---

<div class="post-metadata">

**Author:** ![Verbonaut](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/verbonaut/32/11824_2.png) [@Verbonaut](https://forum.juce.com/u/Verbonaut)\
**Post date:** [October 15, 2023, 8:24pm UTC](https://forum.juce.com/t/macos-older-deployment-targets-missing-symbols/58346/2 "2023-10-15T20:24:33Z")

</div>

There seems to be some issues related to the new linker in XCode 15, it could be related but I don’t know the full details, see [this post](https://forum.juce.com/t/midifile-crash-on-catalina-xcode-15/58221/10) if you want to look into that. You could try XCode 15.1 beta as the release notes suggest this issue may be resolved so it could help you figure out of it’s this issue or not.

---

<div class="post-metadata">

**Author:** ![john41879](https://avatars.discourse-cdn.com/v4/letter/j/73ab20/32.png) [@john41879](https://forum.juce.com/u/john41879)\
**Post date:** [October 18, 2023, 5:13pm UTC](https://forum.juce.com/t/macos-older-deployment-targets-missing-symbols/58346/3 "2023-10-18T17:13:29Z")

</div>

@Verbonaut

Thank you very much for sharing the post.

Just for the record, the only thing needed was to add this line below in CMakeLists file.

```auto
link_libraries("-Wl,-ld_classic")

```

---

<div class="post-metadata">

**Author:** ![JojoTheMAN21](https://avatars.discourse-cdn.com/v4/letter/j/aca169/32.png) [@JojoTheMAN21](https://forum.juce.com/u/JojoTheMAN21)\
**Post date:** [November 4, 2023, 4:49am UTC](https://forum.juce.com/t/macos-older-deployment-targets-missing-symbols/58346/4 "2023-11-04T04:49:47Z")

</div>

Thank you for this post. I was having this exact issue and you saved the day!

In my case, I do not have a CMakeLists file, and was a bit confused as to where to add that line. I thought I’d document it in case anyone else’s setup is similar to mine.

In Projucer, under the “Exporters” drawer, click the “Xcode (macOS)” Exporter. Then, in the “Extra Linker Flags” section, add the following:

```auto
-Wl,-ld_classic

```

Resave the project and you’re done! You can verify that it’s working by doing the following in Xcode: click your project at the top of the Project navigator, clicking your app under Targets on the left, click Build Settings at the top, then type in the filter textbox: “Other Linker Flags”. It should now include the `-Wl,-ld_classic` flags.
