XcodeでリアクティブネイティブiOSアプリを構築中にこのエラーが発生します。
Npmインストールおよびrpmリンク react-native-fs libraryの後にこのエラーの取得を開始しました。しかし、ソリューションをオンラインで検索した後、他の反応するネイティブライブラリをインストールしているときに多くの人が同じエラーを受け取っていることに気付きました。
可能な解決策は、「ビルド設定」->「ヘッダー検索パス」の下に以下を追加することです。
$(SRCROOT)/../node_modules/react-native/React
-(再帰)
しかし、この解決策では運がなく、まだ同じエラーが発生します
私の場合、この特定の問題は、iOS用の0.40以上の反応ネイティブアプリをアーカイブしようとしたときに発生しました(解決策は次のとおりです: https://github.com/facebook/react-native/issues/11721# issuecomment-270672904 )。
起こったことは、Xcodeがreact-nativeを構築しようとしていたことでしたライブラリを並行して、暗黙的な反応依存関係を持つライブラリを構築していましたbefore実際に反応ライブラリを構築しています。
私の場合の解決策は次のとおりです。
並列ビルドを無効にします。
プロジェクトの依存関係として反応を追加
クイックフィックス(最高ではない)
インポートのreact-nativeヘッダー行を変更します:#import <React/RCTBridgeModule.h> #import <React/RCTLog.h>
宛先:#import "RCTBridgeModule.h" #import "RCTLog.h"
以下は、使用しようとしていたライブラリに対して行った変更の例です。 https://github.com/johanneslumpe/react-native-fs/pull/238/files
変化する
#import "RCTBridgeModule.h"
に
#import "React/RCTBridgeModule.h"
React Nativeを0.40+にアップグレードした後にこのエラーが発生した場合、コマンドラインでreact-native upgrade
を実行する必要があります。
Libraries/React.xcodeproj
がxcodeで赤の場合、node_modulesを再インストールします
rm -rf node_modules && yarn
反応ネイティブ0.46.3から新しく作成されたプロジェクトは赤でした:S私は反応ネイティブinitを行ったときにnpm 5.3.0とyarn 0.24.5を持っています
以前の投稿で説明されている反応ネイティブライブラリの最新リリースおよび here には互換性の変更があります。 react-native-0.40 +にアップグレードする予定がない場合でも、たとえばreact-native-fsを使用して、以前のバージョンのライブラリを強制的にインストールできます。
npm install --save -E [email protected]
デバッグをビルドできましたが、アーカイブをビルドできませんでした。
/ node_modules/react-native/ReactにあるReact.xcodeproj
をXcodeのルートディレクトリにドラッグしてこの問題を解決し、ビルド段階>ターゲットの依存関係でReactをターゲットの依存関係として追加しました。
私にとっては、上記のソリューションからは何も動作せず、それ以下が動作しました(すでにParallelize Build
をチェックアウトし、React
を追加しました)
1. Open XCode --> To Libraries add `$LibraryWhichDoesNotWork.xcodeproj$`
2. Then for your app in the `Build Phases` add to the `Link Binary with Libraries` the file `lib$LibraryWhichDoesNotWork$.a`
プロジェクトのiOSフォルダーに移動してポッドをインストールします-$ポッドインストール
ポッドタイプコマンドのインストールでエラーが発生した場合-$ xcode-select -p
結果は次のようになります-/Applications/Xcode.app/Contents/Developer
パスが正しくない場合は、XcodeでiOSプロジェクトを開き、Xcode-> preferences-> command line tools-> select xcodeに移動します。
そして、問題を修正するポッドを再度インストールします。
楽しい、
新しい依存関係に対してpod install
コマンドを実行した後、このエラーが表示されました。それらとともに、Reactもインストールされていました。したがって、おそらくXcodeのパスが混乱していました。これらの行をPodFileから削除すると、エラーはなくなりました。ここから削除されたものは、Xcodeで既にリンクされていることに注意してください。
target 'app' do
pod 'GoogleMaps'
pod 'Firebase/Auth', '~> 6.3.0'
pod 'Firebase/Database', '~> 6.3.0'
# Removed four pods below and it worked.
pod 'react-native-image-picker', :path => '../node_modules/react-native-image-picker'
pod 'ReactNativePermissions', :path => '../node_modules/react-native-permissions'
pod 'react-native-image-resizer', :path => '../node_modules/react-native-image-resizer'
pod 'RNFS', :path => '../node_modules/react-native-fs'
end
0.58.4から新しいreact-nativeバージョン0.60.4にアップグレードするときに、この問題が発生しました。私がインターネットで見つけたものは何も私を助けませんでしたが、私はそれを機能させることができました:
ビルド設定に移動し、「ヘッダー検索パス」を検索し、エントリを選択して、削除ボタンを押します。
これらの値をオーバーライドしましたが、削除後にデフォルトに戻ったようです。また、Cocoapodsはpod install
の後にターミナルでメッセージで不平を言っていました。
[!] The `app [Release]` target overrides the `HEADER_SEARCH_PATHS` build setting defined in `Pods/Target Support Files/Pods-app/Pods-app.release.xcconfig'. This can lead to problems with the CocoaPods installation
エディターから作成する場合は、SMobile.xcschemeも開きます。
parallelizeBuildables = "NO"
を変更します