简体   繁体   中英

the command `brew install watchman` runs `chmod` but fails to install eventually

brew install --HEAD watchman
==> Cloning https://github.com/facebook/watchman.git
Updating /Library/Caches/Homebrew/watchman--git
==> Checking out branch master
==> ./autogen.sh
==> ./configure --prefix=/usr/local/Cellar/watchman/HEAD --with-pcre
==> make
==> make install
install: chmod 777 /: Operation not permitted
touch //.not-empty
touch: //.not-empty: Permission denied
make[1]: *** [install-exec-local] Error 1
make: *** [install-am] Error 2
couldn't understand kern.osversion `14.5.0'

READ THIS: https://git.io/brew-troubleshooting

It is trying to chmod 777 / which is not good. Why is it trying to do that? Feels like that shouldn't be allowed. I tried to uninstall watchman and reinstall with this command to get a react-native to start working.

Followed steps here: https://github.com/facebook/react-native/issues/239

https://facebook.github.io/react-native/docs/troubleshooting.html

brew uninstall watchman
sudo chown -R `whoami` /usr/local
brew link pcre
brew install watchman

Ok fixed it

You can install watchman without the --HEAD option (the currently tracked version of watchman is old enough to not have the issue specified). So just do a brew install watchman.

If you then get issues with your react project make sure that your project directory is a git repo (run git init if not) see:

https://github.com/facebook/react-native/issues/2032

https://github.com/facebook/react-native/issues/2042

Fix for installing on OSX high sierra 10.13.2 required reinstalling homebrew since it needs to work around the non-writeable /usr/local/ folder

I had to reinstall homebrew:

uninstall:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)" reinstall:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Try

brew update
brew doctor
brew install watchman

If you are still having problems, try going to your_project/node_modules/react-native/packager/react-packager/src/FileWatcher/index.js and increase the MAX_WAIT_TIME

For me worked the same as above:

brew update
brew doctor
brew install watchman

Also make sure you have this in the jest config:

watchPathIgnorePatterns: ['node_modules']

People on new M1, M2 macbooks use arch -x86_64 brew install <package>

For me, running the following command worked:

brew install --HEAD watchman

For more information do consult the official documentation Watchman documentation from Facebook

守望者文档的屏幕截图

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM