Не могу заварить установочный узел
Я пытаюсь обновить свой узел с помощью homebrew, но столкнулся с проблемой, потому что я думаю, что я пытался загрузить через веб-сайт. Я очень новичок в терминале. Я пытался найти ответы, но многие люди говорят, что вы можете просто удалить непаренные файлы заголовков. Я не уверен, как это сделать. но по какой-то причине, когда я пытаюсь установить узел brew, он говорит, что шаг brew link не был успешно завершен.
Я также пытался заварить узел ссылки, но это тоже не работает. У меня закончились варианты, поэтому я пришел сюда.
[SICNARF@WOPR ~]$ brew install node
==> Downloading https://homebrew.bintray.com/bottles/node-0.12.7.yosemite.bottle.tar.gz
Already downloaded: /Library/Caches/Homebrew/node-0.12.7.yosemite.bottle.tar.gz
==> Pouring node-0.12.7.yosemite.bottle.tar.gz
==> Caveats
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink include/node/android-ifaddrs.h
/usr/local/include/node is not writable.
You can try again using:
brew link node
Warning: The post-install step did not complete successfully
You can try again using `brew postinstall node`
==> Summary
/usr/local/Cellar/node/0.12.7: 2726 files, 31M
это то, что происходит, когда я завариваю доктора
[SICNARF@WOPR ~]$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!
Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected header files:
/usr/local/include/node/ares.h
/usr/local/include/node/ares_version.h
/usr/local/include/node/libplatform/libplatform.h
/usr/local/include/node/nameser.h
/usr/local/include/node/node.h
/usr/local/include/node/node_buffer.h
/usr/local/include/node/node_internals.h
/usr/local/include/node/node_object_wrap.h
/usr/local/include/node/node_version.h
/usr/local/include/node/openssl/aes.h
/usr/local/include/node/openssl/asn1.h
/usr/local/include/node/openssl/asn1_mac.h
/usr/local/include/node/openssl/asn1t.h
/usr/local/include/node/openssl/bio.h
/usr/local/include/node/openssl/blowfish.h
/usr/local/include/node/openssl/bn.h
/usr/local/include/node/openssl/buffer.h
/usr/local/include/node/openssl/camellia.h
/usr/local/include/node/openssl/cast.h
/usr/local/include/node/openssl/cmac.h
/usr/local/include/node/openssl/cms.h
/usr/local/include/node/openssl/comp.h
/usr/local/include/node/openssl/conf.h
/usr/local/include/node/openssl/conf_api.h
/usr/local/include/node/openssl/crypto.h
/usr/local/include/node/openssl/des.h
/usr/local/include/node/openssl/des_old.h
/usr/local/include/node/openssl/dh.h
/usr/local/include/node/openssl/dsa.h
/usr/local/include/node/openssl/dso.h
/usr/local/include/node/openssl/dtls1.h
/usr/local/include/node/openssl/e_os2.h
/usr/local/include/node/openssl/ebcdic.h
/usr/local/include/node/openssl/ec.h
/usr/local/include/node/openssl/ecdh.h
/usr/local/include/node/openssl/ecdsa.h
/usr/local/include/node/openssl/engine.h
/usr/local/include/node/openssl/err.h
/usr/local/include/node/openssl/evp.h
/usr/local/include/node/openssl/hmac.h
/usr/local/include/node/openssl/idea.h
/usr/local/include/node/openssl/krb5_asn.h
/usr/local/include/node/openssl/kssl.h
/usr/local/include/node/openssl/lhash.h
/usr/local/include/node/openssl/md4.h
/usr/local/include/node/openssl/md5.h
/usr/local/include/node/openssl/mdc2.h
/usr/local/include/node/openssl/modes.h
/usr/local/include/node/openssl/obj_mac.h
/usr/local/include/node/openssl/objects.h
/usr/local/include/node/openssl/ocsp.h
/usr/local/include/node/openssl/opensslconf.h
/usr/local/include/node/openssl/opensslv.h
/usr/local/include/node/openssl/ossl_typ.h
/usr/local/include/node/openssl/pem.h
/usr/local/include/node/openssl/pem2.h
/usr/local/include/node/openssl/pkcs12.h
/usr/local/include/node/openssl/pkcs7.h
/usr/local/include/node/openssl/pqueue.h
/usr/local/include/node/openssl/rand.h
/usr/local/include/node/openssl/rc2.h
/usr/local/include/node/openssl/rc4.h
/usr/local/include/node/openssl/ripemd.h
/usr/local/include/node/openssl/rsa.h
/usr/local/include/node/openssl/safestack.h
/usr/local/include/node/openssl/seed.h
/usr/local/include/node/openssl/sha.h
/usr/local/include/node/openssl/srp.h
/usr/local/include/node/openssl/srtp.h
/usr/local/include/node/openssl/ssl.h
/usr/local/include/node/openssl/ssl2.h
/usr/local/include/node/openssl/ssl23.h
/usr/local/include/node/openssl/ssl3.h
/usr/local/include/node/openssl/stack.h
/usr/local/include/node/openssl/symhacks.h
/usr/local/include/node/openssl/tls1.h
/usr/local/include/node/openssl/ts.h
/usr/local/include/node/openssl/txt_db.h
/usr/local/include/node/openssl/ui.h
/usr/local/include/node/openssl/ui_compat.h
/usr/local/include/node/openssl/whrlpool.h
/usr/local/include/node/openssl/x509.h
/usr/local/include/node/openssl/x509_vfy.h
/usr/local/include/node/openssl/x509v3.h
/usr/local/include/node/pthread-fixes.h
/usr/local/include/node/smalloc.h
/usr/local/include/node/stdint-msvc2008.h
/usr/local/include/node/tree.h
/usr/local/include/node/uv-aix.h
/usr/local/include/node/uv-bsd.h
/usr/local/include/node/uv-darwin.h
/usr/local/include/node/uv-errno.h
/usr/local/include/node/uv-linux.h
/usr/local/include/node/uv-sunos.h
/usr/local/include/node/uv-threadpool.h
/usr/local/include/node/uv-unix.h
/usr/local/include/node/uv-version.h
/usr/local/include/node/uv-win.h
/usr/local/include/node/uv.h
/usr/local/include/node/v8-debug.h
/usr/local/include/node/v8-platform.h
/usr/local/include/node/v8-profiler.h
/usr/local/include/node/v8-testing.h
/usr/local/include/node/v8-util.h
/usr/local/include/node/v8.h
/usr/local/include/node/v8config.h
/usr/local/include/node/v8stdint.h
/usr/local/include/node/zconf.h
/usr/local/include/node/zlib.h
Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:
node
[SICNARF@WOPR ~]$ brew link
This command requires a keg argument
[SICNARF@WOPR ~]$ brew link node
Linking /usr/local/Cellar/node/0.12.7...
Error: Could not symlink include/node/android-ifaddrs.h
/usr/local/include/node is not writable.
13 ответов
brew link --overwrite node
Вышеуказанная команда должна быть выполнена после следующих трех команд. И это решит проблему.
sudo chown -R `whoami`:admin /usr/local/include/node
sudo chown -R `whoami`:admin /usr/local/bin
sudo chown -R `whoami`:admin /usr/local/share
Я столкнулся с этой же проблемой при тех же обстоятельствах. Мне удалось получить версию brew для успешной установки:
- Бежать
brew install node
- Запишите модуль, вызывающий проблему, и удалите его. В вашем случае это будет
/usr/local/include/node
- Удалить -
brew uninstall node
- Переустановить -
brew install node
Мне пришлось повторить этот процесс несколько раз для каждого остающегося проблемного каталога (примерно 3 разных в действительности), и в итоге установка прошла без проблем.
Я столкнулся с этой проблемой на новом MacBook Pro в Mac OS High Sierra. Я обнаружил, что brew пытается использовать каталоги с именами include и lib в / usr / local, которых там не было. Поскольку root владеет / usr, мне пришлось сделать это вручную - убедившись, что whoami
владелец соответствует одноранговым каталогам в /usr/local:
sudo mkdir /usr/local/include
chown `whoami`:admin /usr/local/include
sudo mkdir /usr/local/lib
chown `whoami`:admin /usr/local/lib
И затем, чтобы соответствовать другим каталогам в / usr / local, я сделал:
chmod 775 /usr/local/include
chmod 775 /usr/local/lib
тогда сработало следующее:
brew uninstall node
brew install node
Вам нужно сделать /usr/local/bin
а также /usr/local/share
доступен для записи. Я использовал этот ответ, чтобы добиться этого. Ниже приведен ключевой совет в ответе в случае разрыва ссылки:
sudo chown -R `whoami`:admin /usr/local/bin
sudo chown -R `whoami`:admin /usr/local/share
brew postinstall node
или brew link --overwrite node
похоже, не помогает.
После нескольких раундов brew uninstall node
а также brew install node
следующие каталоги и файлы, вызывающие нарушение:
sudo rm -r /usr/local/include/node
sudo rm -r /usr/local/share/doc/node
sudo rm -r /usr/local/lib/node_modules
sudo rm /usr/local/lib/dtrace/node.d
sudo rm /usr/local/share/man/man1/node.1
sudo rm /usr/local/share/systemtap/tapset/node.stp
После удаления вредоносных файлов brew
сделает за вас все необходимые ссылки с разрешениями.
Вероятные разрешения были установлены как root:wheel
из-за прошлой установки с sudo
или, возможно, ручная установка и т. д.
У меня была такая же ошибка:
Linking /usr/local/Cellar/node/11.10.0...
Error: Could not symlink include/node /usr/local/include is not writable.
Решение:
$ sudo mkdir /usr/local/include
$ sudo chown -R $(whoami) $(brew --prefix)/*
$ brew link node
Связывание /usr/local/Cellar/node/11.10.0... создано 7 символических ссылок
$ node -v
=> v11.10.0
$ npm -v
=> 6.7.0
Для тех, кто работает с высокими sierra на MacOS:
Я пытался дать разрешения, используя chown
Команда и удаление, а затем переустановка узла с помощью homebrew, но ничего не получалось.
Я просто зашел на этот сайт https://nodejs.org/en/download/ и скачал 64-битный macOS .pkg, и он отлично работал. Я проверил это, просто введя команду node
в терминале.
У меня была очень похожая проблема со ссылками. Я не мог заставить его работать. Я попытался выполнить chmod / usr / local / include / node, чтобы я мог написать ссылку на него, но столкнулся с другой ошибкой. В качестве окончательного решения я просто переустановил узел с https://nodejs.org/download/
У меня снова есть рабочий узел! Я бы с удовольствием поработал с brew, но это избавило меня от лишних хлопот, просто используя установщик pkg с сайта. Я знаю, что это может быть не то решение, которое вы ищете, но я просто хотел поделиться своим опытом с той же проблемой. Я надеюсь, что это помогает!
brew link --overwrite node
Ошибка: не удалось символическую ссылку (...)
/ USR / ххх
sudo chown -R 'whoami?':admin xxx
brew link --overwrite node
Промыть и повторить
Для меня я должен был запустить врача, который показал мне, что у меня нет прав на запись и мне нужно было бежать sudo chown -R $(whoami) /usr/local/bin /usr/local/share /usr/local/share/man
чтобы исправить проблему.
Я предлагаю бежать brew doctor
чтобы увидеть, может ли он дать некоторые советы по этому вопросу
Удалите папку с ошибкой или файл вручную и "brew uninstall node && brew install node" запустите эту команду
Вы должны делать этот процесс, пока все папки с ошибками и файлы не будут удалены.
Тогда узел будет связан.
Если вы попытаетесь brew link node
и он говорит что-то вроде:
Ошибка: не удалось создать символическую ссылку include/node/openssl/archs/aix-gcc/asm/include/openssl/opensslconf.h Target /usr/local/include/node/openssl/archs/aix-gcc/asm/include/openssl/opensslconf.h уже существует. Вы можете удалить его:
Попробуй это:
brew link --overwrite --dry-run node | xargs rm
brew link node
Чтобы обновить версию Node.js с помощью Homebrew, выполните следующие действия:
- Обновить Homebrew : убедитесь, что Homebrew обновлен, выполнив следующую команду:
заварить обновление
- Список установленных версий . Проверьте установленные на данный момент версии Node.js, используя:
узел списка пивоварения --versions
- Удалить текущую версию . Чтобы обновить, удалите существующую версию Node.js:
узел удаления Brew
- Установите последнюю версию : установите последнюю версию Node.js с помощью Homebrew:
узел установки Brew
- Проверить новую версию : проверьте, прошло ли обновление успешно, подтвердив новые версии Node.js и npm:
узел -v НПМ -v
Эти шаги помогут вам обновить Node.js с помощью Homebrew. Если вам нужна дополнительная информация или помощь, вы можете обратиться к официальной документации Homebrew: https://brew.sh/