"RCTHost.h not found — react-native-navigation 8.3.2 + RN 0.77.3 + use_frameworks! :linkage => :dynamic (Firebase 26 SPM mode)"
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- firebase, ios, react-native
- Ambito
- build-system, mobile
Direzione di ricerca
Inizia con la configurazione minima di Podfile e riproduci la compilazione dopo i passaggi di pulizia indicati. Traccia l’import da RNNComponentViewCreator.h attraverso RNNReactButtonView.h e confronta gli header del framework React-RuntimeApple con il linking dinamico. Il lavoro è completato quando la configurazione di esempio viene compilata correttamente con React Native Firebase 26 in modalità SPM e react-native-navigation 8.3.2.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What happened?
Build fails on iOS with react-native-navigation when using use_frameworks! :linkage => :dynamic, which is required to support React Native Firebase 26's native SPM resolution (RNFB 26+ resolves Firebase via SPM by default, and RNFB docs explicitly state SPM mode cannot be combined with :linkage => :static).
Error:
node_modules/react-native-navigation/lib/ios/RNNReactButtonView.h:2:9: fatal error: 'React-RuntimeApple/ReactCommon/RCTHost.h' file not found
2 | #import <React-RuntimeApple/ReactCommon/RCTHost.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Included via: RNNComponentViewCreator.h → RNNReactButtonView.h
This looks related to #8075, #8094 and #8026, but those are scoped to :linkage => :static. The fix that closed #8026 (PR #8171, documentation only) specifically opts Firebase back onto CocoaPods ($RNFirebaseDisableSPM = true) and requires static linkage — which isn't viable for us since we upgraded specifically to use RNFB 26's SPM support.
Things I tried, all with a full clean between attempts (rm -rf Pods Podfile.lock ~/Library/Developer/Xcode/DerivedData/*, then pod install):
- post_install patch adding HEADER_SEARCH_PATHS / FRAMEWORK_SEARCH_PATHS pointing at
${PODS_CONFIGURATION_BUILD_DIR}/React-RuntimeApple/React_RuntimeApple.framework/Headers— no change. - Patching the import to
#import <React_RuntimeApple/RCTHost.h>(flat framework-style) — got past the "file not found," but then failed with the framework loading yet not containing RCTHost.h at that build path. - Reverting the import and adding the full set of transitive header search paths RCTHost.h itself needs (React-RuntimeCore, React-jserrorhandler, React-jsinspector, RCT-Folly, fmt, etc., per https://gist.github.com/Kudo/1b892e340f181bd610fcaa7369887593) — same original error persists at the first import.
Environment:
- react-native-navigation: 8.3.2
- react-native: 0.77.3
- @react-native-firebase/*: ^26.1.0
- use_frameworks: :dynamic
- New Architecture: enabled
- Xcode 16, iOS 26.2 SDK
What was the expected behaviour?
Project builds successfully on iOS with react-native-navigation installed alongside react-native-firebase 26+ using use_frameworks! :linkage => :dynamic (required for Firebase's native SPM resolution).
Was it tested on latest react-native-navigation?
- I have tested this issue on the latest react-native-navigation release and it still reproduces.
Help us reproduce this issue!
Minimal repro Podfile config that triggers it:
ENV['SENTRY_USE_SPM'] = '1'
platform :ios, '16.0'
prepare_react_native_project!
$RNFirebaseAnalyticsWithoutAdIdSupport = true
use_frameworks! :linkage => :dynamic
target 'App' do
config = use_native_modules!
pod 'GoogleUtilities', :modular_headers => true
use_react_native!(
:path => config[:reactNativePath],
:app_path => "#{Pod::Config.instance.installation_root}/.."
)
end
Dependencies: react-native-navigation 8.3.2, @react-native-firebase/app ^26.1.0, react-native 0.77.3.
Happy to share a minimal reproducible repo if that'd help triage — let me know and I'll strip our app down to a bare repro.
In what environment did this happen?
React Native Navigation version: 8.3.2
React Native version: 0.77.3
Has Fabric (React Native's new rendering system) enabled: yes
Node version: 20.19.0
Device model: iPhone (simulator + physical device, arm64)
iOS version: 18 / building against iOS 26.2 SDK
- Lingua principale
- MDX
- Stelle
- 13.2k
- Fork
- 2.6k
- Merge medio
- 2g 10h
- PR unite (30g)
- 6
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di wix/react-native-navigation
-
needs triage triage: documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
wix/react-native-navigation#8343 · 1 commento ·
-
[Fix] searchBar `focus:` true ignored on mergeOptions when searchController already existsForse già presa @IsaacIsrael l’ha presa 159 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
wix/react-native-navigation#8318 ·
-
Build Failed with RN 0.87Apertaneeds triage type: accepted/bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
wix/react-native-navigation#8365 · 2 commenti ·
-
`showOverlay` creates a scene-less `UIWindow`, so overlays never appear under UIScene lifecycleForse già presa @yedidyak l’ha presa 4 giorni fa. Apertaplatform: iOS type: accepted/bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
wix/react-native-navigation#8345 · 2 commenti · 2 reazioni ·
-
platform: iOS type: accepted/bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
wix/react-native-navigation#8339 ·
Tutte le issue di wix/react-native-navigation
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 69/100
open-telemetry/opentelemetry-go-compile-instrumentation#1713 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
carp-dk/flutter-plugins#1312 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
jhomlala/betterplayer#1646 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Frogging-Family/linux-tkg#1265 ·