-
Notifications
You must be signed in to change notification settings - Fork 25.1k
Description
Description
When opening Xcode not from the command line (via xed f.e.) but directly from Finder/Dock and the ccache option is enabled the build will fail because ccache can not be found even though it is installed. The issue exists because the PATH most certainly won't include the ccache binary (f.e. when installed via homebrew, it is located at /opt/homebrew/bin/ccache but Xcodes PATH does not include it). When setting the project up for ccache, the existence of ccache is checked. However this runs as part of pod install in a terminal environment with a potentially different PATH env variable. To fix this I think the ccache path found at pod install time should be passed to the ccache-clang and ccache-clang++.sh scripts.
Steps to reproduce
- Enable the ccache flag in your Podfile
react_native_post_install(
installer,
react_native_path,
:ccache_enabled => true
)- Install ccache
- Run pod install
- Open Xcode from Dock/Finder
- Open the projects xcworkspace
- Build the project
An error message will be visible stating:
[root_path]/node_modules/react-native/scripts/xcode/ccache-clang.sh: line 14: exec: ccache: not found
Command CompileC failed with a nonzero exit code
React Native Version
0.74.2
Affected Platforms
Build - MacOS
Output of npx react-native info
System:
OS: macOS 14.6.1
CPU: (8) arm64 Apple M1 Pro
Memory: 84.19 MB / 32.00 GB
Shell:
version: "5.9"
path: /bin/zsh
Binaries:
Node:
version: 20.11.0
path: ~/.asdf/installs/nodejs/20.11.0/bin/node
Yarn:
version: 1.19.0
path: ~/.asdf/shims/yarn
npm:
version: 10.2.4
path: ~/.asdf/plugins/nodejs/shims/npm
Watchman: Not Found
Managers:
CocoaPods:
version: 1.13.0
path: /Users/David.vonKnobelsdorff/.asdf/shims/pod
SDKs:
iOS SDK:
Platforms:
- DriverKit 23.5
- iOS 17.5
- macOS 14.5
- tvOS 17.5
- visionOS 1.2
- watchOS 10.5
Android SDK: Not Found
IDEs:
Android Studio: 2024.1 AI-241.15989.150.2411.11948838
Xcode:
version: 15.4/15F31d
path: /usr/bin/xcodebuild
Languages:
Java:
version: 17.0.7
path: /usr/bin/javac
Ruby:
version: 3.2.4
path: /Users/David.vonKnobelsdorff/.asdf/shims/ruby
npmPackages:
"@react-native-community/cli": Not Found
react: Not Found
react-native: Not Found
react-native-macos: Not Found
npmGlobalPackages:
"*react-native*": Not Found
Android:
hermesEnabled: true
newArchEnabled: false
iOS:
hermesEnabled: true
newArchEnabled: false
Stacktrace or Logs
[root_path]/node_modules/react-native/scripts/xcode/ccache-clang.sh: line 14: exec: ccache: not found
Command CompileC failed with a nonzero exit code
Reproducer
https://github.com/dehlen/rn-ccache-bug
Screenshots and Videos
No response