Open alextoudic opened 1 month ago
I'm wondering if a static framework version as suggested in https://github.com/rive-app/rive-ios/issues/336 would fix the issue ? Currently, it makes Rive unusable on ios with React Native if React-Native-Firebsae (a very common library) or other static framework is used
We have a renames header that we use to help avoid collisions like this.
We might need to add some symbols to it @dskuza.
Or, are we somehow disabling this on iOS? https://github.com/rive-app/rive-runtime/blob/main/dependencies/premake5_yoga_v2.lua
https://github.com/rive-app/rive-runtime/blob/main/dependencies/rive_yoga_renames.h
Looks like we are in fact missing YGNodeStyleSetMinWidth, and potentially more.
I see the symbol on this line: https://github.com/rive-app/rive-runtime/blob/6f82f888172a8bb0ce16c1ff5b818156b326fad6/dependencies/rive_yoga_renames.h#L229
I'm not sure how the runtime is compiled, but I noticed the premake5_yoga_v2 script is called with the option --no-yoga-renames
https://github.com/rive-app/rive-runtime/blob/6f82f888172a8bb0ce16c1ff5b818156b326fad6/dependencies/gen_yoga_renames/gen_renames.sh#L41
(It is then called again "just to examine the exported symbols...")
Any update on this or a fix? Ran into the same issue with Expo SDK 51 with firebase and rive-react-native 6.0.4...
Is this commit related ? https://github.com/rive-app/rive-runtime/commit/d3e4bcf2faa7abcdccdaa660c65a064dc2ea9b49 👀
Description
I'm experiencing an
EXC_BAD_ACCESS
error withYGNodeStyleSetMinWidth
when usinguse_frameworks! :linkage => :static
in a project that uses Yoga for layout (specifically with React Native)Provide a Repro
You can find the reproduction setup here: https://github.com/alextoudic/rive-yoga-collision-repro/tree/main/ios
Expected behavior
Both the Rive runtime and React Native should function correctly, using their respective Yoga symbols as intended
Screenshots
Stack trace:
Device & Versions (please complete the following information)
Additional context
The reproduction project is built using Expo with a patched version of
rive-react-native
to ensure the latestRiveRuntime
version (the issue persists with or without this patch). This problem only arises when usinguse_frameworks! :linkage => :static
, which is necessary in my case to integrate@react-native-firebase
I previously commented on this issue but believe this problem may be more related to the loading of Rive's Yoga symbols in a project with overlapping Yoga dependencies when libraries are not dynamically linked. Any insights from iOS developers would be greatly appreciated