Xcodeを使用してiOSデバイスで最初のReact-Nativeアプリを実行しようとしていますが、このエラーが発生し続けます。
ld: warning: directory not found for option '-L/Users/XXXX/Library/Developer/Xcode/DerivedData/nigh-hktjvygosupgnoaafsvgyowhzsqi/Build/Products/Debug-iphoneos/React'
ld: library not found for -lReact
clang: error: linker command failed with exit code 1 (use -v to see invocation)
原因は、SchemeのビルドターゲットリストにReactが含まれていないことに関連していると思います。すべてのボックスがチェックされたリストの最初にReactが表示されますが、ReactだけではなくReact(missing)と表示されます。
「+」ボタンをクリックすると、Reactはオプションになりません。これが私のポッドファイルです:
platform :ios, '10.0'
require_relative '../node_modules/react-native-unimodules/cocoapods'
target 'nigh' do
# Pods for nigh
pod 'React', :path => '../node_modules/react-native', :subspecs => [
'Core',
'CxxBridge',
'DevSupport',
'RCTActionSheet',
'RCTAnimation',
'RCTBlob',
'RCTGeolocation',
'RCTImage',
'RCTLinkingIOS',
'RCTNetwork',
'RCTSettings',
'RCTText',
'RCTVibration',
'RCTWebSocket',
]
pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec'
pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec'
pod 'RNGestureHandler', :podspec => '../node_modules/react-native-gesture-handler/RNGestureHandler.podspec'
pod 'RNReanimated', :podspec => '../node_modules/react-native-reanimated/RNReanimated.podspec'
pod 'react-native-google-maps', path: '../node_modules/react-native-maps' # Uncomment this line if you want to support GoogleMaps on iOS
pod 'GoogleMaps' # Uncomment this line if you want to support GoogleMaps on iOS
pod 'Google-Maps-iOS-Utils' # Uncomment this line if you want to support GoogleMaps on iOS
use_unimodules!
pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons'
pod 'react-native-maps', :path => '../node_modules/react-native-maps'
pod 'RNDeviceInfo', :path => '../node_modules/react-native-device-info'
pod 'react-native-slider', :path => '../node_modules/@react-native-community/slider'
pod 'react-native-notifications', :path => '../node_modules/react-native-notifications'
pod 'react-native-cameraroll', :path => '../node_modules/@react-native-community/cameraroll'
pod 'react-native-image-picker', :path => '../node_modules/react-native-image-picker'
pod 'RNFS', :path => '../node_modules/react-native-fs'
end
post_install do |installer|
installer.pods_project.targets.each do |target|
if target.name == 'react-native-google-maps'
target.build_configurations.each do |config|
config.build_settings['CLANG_ENABLE_MODULES'] = 'No'
end
end
if target.name == "React"
target.remove_from_project
end
end
end
if target.name == "React"ブロックを削除しても、同じエラーが発生します。また、cocoapodsを使用しているため、.xcodeprojectではなく.xcworkspaceからxcodeを開いています。DerivedDataフォルダーからすべてを削除してビルドをクリーンアップしようとしました。また、レガシービルドシステムを使用してビルドしようとしました。Legacy Buildシステムは、「Missing dependency target 'React'」と書かれたほぼすべてのライブラリに警告を表示します。
バンドル名をorg.reactjs.native.example.nighからorg.reactjs.native.name.nighに変更する必要がありました。ある時点で、ターゲットリストにReactが欠けていなかったことを知っています。Reactが欠落しているにもかかわらず、xcode iPhoneエミュレーターでアプリは引き続き正常に動作します。
また、Pods / ProductsファイルのlibReact.aには、他の.aファイルのようなアイコンはありません。
なぜこれが起こっているのか、そして/またはそれを修正/回避する方法を誰かに教えてもらえますか?