-
Notifications
You must be signed in to change notification settings - Fork 230
rive_native prebuilt iOS binaries fail to link with Xcode 26 — undefined symbol errors #622
Description
Description
rive_native 0.1.4 fails to build on iOS when using Xcode 26.x (the current stable Xcode for macOS Tahoe). The
prebuilt static libraries included in the package were compiled with Xcode 16.1 and are incompatible with Xcode 26's
linker/toolchain.
Environment
- Flutter: 3.29.3
- rive: 0.14.4
- rive_native: 0.1.4
- Xcode: 26.4 (Build 17E192) — stable release, March 24, 2026
- macOS: Tahoe (26.x)
- Target: iOS (arm64)
Error
Running flutter build ipa --release produces the following linker errors:
Error (Xcode): Undefined symbol: ReadWriteRing::currentRead()
Error (Xcode): Undefined symbol: ReadWriteRing::ReadWriteRing()
Error (Xcode): Undefined symbol: _createRiveRenderer
Error (Xcode): Undefined symbol: _createRiveRendererContext
Error (Xcode): Undefined symbol: _deleteFlutterRenderer
Error (Xcode): Undefined symbol: _destroyRiveRenderer
Error (Xcode): Undefined symbol: _destroyRiveRendererContext
Error (Xcode): Undefined symbol: _disposeYogaStyle
Error (Xcode): Undefined symbol: _factoryFromRiveRendererContext
Error (Xcode): Undefined symbol: _loadRiveFile
Error (Xcode): Undefined symbol: _rewindRenderPath
Error (Xcode): Undefined symbol: _riveFontDummyLinker
Error (Xcode): Undefined symbol: _riveLock
Error (Xcode): Undefined symbol: _riveUnlock
Error (Xcode): Undefined symbol: _setGPU
Error (Xcode): Undefined symbol: _stopAudioSound
Error (Xcode): Linker command failed with exit code 1
Steps to Reproduce
- Use macOS Tahoe with Xcode 26.4 (stable)
- Add
rive: ^0.14.0as a dependency (or transitively viaawesome_dialog ^3.3.0) - Run
flutter build ipa --release
Additional Context
- Xcode 16.4 cannot run on macOS Tahoe, so downgrading Xcode is not an option.
- Apple will require Xcode 26 SDK for all App Store submissions starting April 28, 2026.
- Pinning to
rive 0.13.13(which usesrive_commoninstead ofrive_native) avoids the linker error but causes a
SIGSEGV crash at runtime on iOS 26.4 during Dart GC mark phase. - The root cause appears to be that the prebuilt
.abinaries shipped withrive_nativewere compiled with Xcode
16.1 and are ABI-incompatible with Xcode 26's toolchain.
Expected Behavior
rive_native should ship prebuilt binaries compiled with Xcode 26, or provide a build-from-source path that works
with the current stable Xcode.