I'm testing React Native 0.56.0-rc.2 on Mac OS Mojave and Xcode 10.
Running:
react-native init TestProject --version="0.56.0-rc.2"
cd TestProject
npm run start
react-native run-ios
Which generated some long errors.
Entering Xcode gave me a failure on missing config.h
for glog, which I found could be built manually:
cd ./node_modules/react-native/third-party/glog-0.3.4
./configure && make && make install
Which passed that stage, but got me on yet another issue
(...)/node_modules/react-native/third-party/glog-0.3.4/src/glog/logging.h:85:10:
'gflags/gflags.h' file not found
I can't find anything related to RN and this on Google or Stack Overflow, only references to other packages and instructions to install those on a Debian-based system.
Is this a known issue?
Running this from the project directory fixed it for me:
cd ./node_modules/react-native/third-party/glog-0.3.4 && ../../scripts/ios-configure-glog.sh
This manually triggers the config script
A simple and quick resolution. In Xcode, go to File->Project/Workspace settings. Change the build system to Legacy Build system.
This is the resolution from Wesley's link. Saw something the other day about posting the direct answer and trying to avoid linking because links / websites can change. I was going to leave this as a comment, but don't have enough rep.
I resolved it by running following steps
- In the root of the project, run
npm install or yarn
- install packages cd node_modules/react-native
- go to node modules directoryscripts/ios-install-third-party.sh
- install @ node_modules/react-native/third-partycd third-party
- go to newly created third party directorycd glog-0.3.x
- ls -la to find your directory version number or just use tab to auto-complete)./configure
- run setupcd ../../../../
- change back to your project directoryreact-native run-ios
orreact-native run-android
- deploy
If any of these solution does not work, please check your project path. Project path and/or directory names should not contain any space in its name or you can create project on Desktop or in Documents directory.
Because of invalid name in project path, React Native project unable to link / add glob header files inside project / workspace.
来源:https://stackoverflow.com/questions/50896834/mojave-xcode-10-build-fails-on-glog-config-h-gflags-gflags-h