# Bug: weak linked frameworks are not properly propagated to all targets

**URL:** <https://forum.juce.com/t/bug-weak-linked-frameworks-are-not-properly-propagated-to-all-targets/69300>\
**Category:** The Projucer\
**Created:** [August 13, 2026, 10:02am UTC](https://forum.juce.com/t/bug-weak-linked-frameworks-are-not-properly-propagated-to-all-targets/69300 "2026-08-13T10:02:22Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![masshacker](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/masshacker/32/650_2.png) [@masshacker](https://forum.juce.com/u/masshacker)\
**Post date:** [August 13, 2026, 10:02am UTC](https://forum.juce.com/t/bug-weak-linked-frameworks-are-not-properly-propagated-to-all-targets/69300/1 "2026-08-13T10:02:22Z")

</div>

Hi there,

I’ve discovered that macOS/iOS frameworks that should be marked as Optional don’t always appear as such when using the Projucer.

To repro, create a basic audio plugin project for iOS and enable AUv3 and Standalone exporters, then generate and open the Xcode project file.

If you navigate to the Project Settings \> AUv3 target \> Build Phases \> Link Binary With Libraries section, you should see this:

 ![AUv3](https://us1.discourse-cdn.com/flex026/uploads/juce/original/3X/2/c/2ce788793929b482e6319e297dd7ef82e1ef5d77.png)

Now navigate to the same section, but this time for the Standalone target:

 ![Standalone](https://us1.discourse-cdn.com/flex026/uploads/juce/original/3X/e/0/e08f6c65790ae61d3a7dc09249023fb3379ef8de.png)

As a result, the app will crash at startup on iOS devices running iOS \< 14.0.

> <https://github.com/juce-framework/JUCE/commit/a4ba0c1b1c55068885c846fcfe7bc68ac74c59a3>

With this commit, the UniformTypeIdentifiers framework was added to the juce\_gui\_basics module as Optional (weak):

 ![Module](https://us1.discourse-cdn.com/flex026/uploads/juce/original/3X/9/8/98bbbd61d1984049c4f5647dbe303025ef7bcddc.png)

But unfortunately the Projucer marks it as Required in the Standalone target.

This issue was encountered with the last JUCE 8 version, but I was also able to reproduce it with JUCE 9.0.1.

Thank you for reading!

---

<div class="post-metadata">

**Author:** ![attila](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/attila/32/11206_2.png) [@attila](https://forum.juce.com/u/attila)\
**Post date:** [August 20, 2026, 9:51am UTC](https://forum.juce.com/t/bug-weak-linked-frameworks-are-not-properly-propagated-to-all-targets/69300/2 "2026-08-20T09:51:29Z")

</div>

Thank you for reporting this issue. A fix is now out on develop

> <https://github.com/juce-framework/JUCE/commit/915d91bf603f51eb790bb38c5de6274a12e0cd31>
>
> In a multi-target project, such as an AUv3 plugin project with a
> Standalone targ…et, weak-linked frameworks could end up being
> strong-linked.
> 
> This is fixed by adding separate PBXBuildFile entries for frameworks in
> each built target.

---

<div class="post-metadata">

**Author:** ![masshacker](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/masshacker/32/650_2.png) [@masshacker](https://forum.juce.com/u/masshacker)\
**Post date:** [August 20, 2026, 10:20am UTC](https://forum.juce.com/t/bug-weak-linked-frameworks-are-not-properly-propagated-to-all-targets/69300/3 "2026-08-20T10:20:51Z")

</div>

Awesome!

Thank you for the fix 😉
