Node.js не связана с ошибкой

Я буквально все перерыл в сети. Но я не смог найти решение ошибки node-0.8.8 already installed, it's just not linked. Это связано с проблемой файла пути?


person Ali    schedule 30.09.2012    source источник
comment
Можете ли вы дать некоторый контекст тому, что вы пытаетесь сделать?   -  person Brad    schedule 30.09.2012
comment
Я загрузил узел 0.5 и пытаюсь обновить его до последней версии. Я использую «узел установки варки». Он устанавливает версию 0.8.8, но после того, как я набираю node --version, он говорит, что это более старая версия.   -  person Ali    schedule 30.09.2012


Ответы (8)


Выполните этот список команд в этом конкретном порядке:

sudo brew uninstall node
brew update
brew upgrade
brew cleanup
brew install node
sudo chown -R $(whoami) $(brew --prefix)
brew link --overwrite node
brew postinstall node
person 6754534367    schedule 19.05.2016
comment
запуск brew в режиме sudo больше не поддерживается - person alex; 09.03.2019

После того, как вы запустите brew upgrade для обновления узла до последней версии, запустите brew doctor, чтобы увидеть возможные проблемы. Он может сказать вам, что узел не связан, и в этом случае запуск brew link node свяжет его. (Возможно, вам придется сначала запустить brew unlink node)

person arete    schedule 03.07.2013
comment
Я продолжаю получать эту ошибку --- Не удалось символическую ссылку include/node/android-ifaddrs.h /usr/local/include/node недоступен для записи --- есть идеи? - person SleepsOnNewspapers; 16.06.2015
comment
@SleepsOnNewspapers developpeers.com/blogs/ - person ironicaldiction; 03.11.2015
comment
По какой-то причине мне нужно запустить brew update вместо brew upgrade - person nigong; 29.04.2016
comment
Ошибка: Нет такого бочонка: /usr/local/Cellar/node - person Hossam Maher; 01.06.2017

Сегодня я получил ту же ошибку, и мне сказали, что Node не был правильно связан, а также были неожиданные файлы заголовков.

Когда я попытался переустановить узел, он сказал мне, что он уже установлен, просто не связан.

Warning: /usr/local/include isn't writable

/usr/local/bin/node already exists. Remove it

Решение

Чтобы исправить это, я взял его на себя, используя:

sudo chown -R `whoami` /usr/local/

Затем я принудительно связал все файлы, используя:

brew link --overwrite node

После этого я выполнил процедуру установки после установки:

brew postinstall node

Затем я проверил, правильно ли установлен узел:

node -v

Я получил вывод v5.1.0, и это было исправлено :). Надеюсь это поможет.

Возможно, это не идеальное решение, так как я начал баловаться с узлом и доморощенным всего 10 минут назад, но это помогло мне.

person NSNoob    schedule 26.04.2016

Ваша старая версия Node 0.5, вероятно, не была установлена ​​вместе с Homebrew (или сценарий Homebrew изменился в большом промежутке между бета-версиями 0.5 и стабильными версиями 0.8 (между выпусками 0.6 и 0.7).

И Homebrew, и официальный установщик Node пытаются установить /usr/local/bin, поэтому я рекомендую начать с простого удаления /usr/local/bin/node, /usr/local/bin/npm и /usr/local/lib/node и повторить попытку.

person Community    schedule 02.12.2012
comment
Вы также должны удалить модули. rm -rf /usr/local/lib/node_modules/ - person Felix; 17.08.2013

ответ хардкорпанка сработал. Однако мы больше не можем chown /usr/local в High Sierra. Итак, выполняем команды в таком порядке:

sudo brew uninstall node
brew update
brew upgrade
brew cleanup
brew install node
sudo chown -R $(whoami) $(brew --prefix)/*
brew link --overwrite node
brew postinstall node
person Kuriakin Zeng    schedule 04.03.2018

Чтобы связать узел, выполните следующую команду:

brew link homebrew/versions/node<version no>

И чтобы проверить правильно ли он установлен или нет, запустите:

node -v

Если узел будет правильно связан, это не приведет к какой-либо ошибке и распечатает версию узла. Вы можете прочитать хорошее объяснение этого из здесь .

person Rohini Choudhary    schedule 24.02.2016

Для линии выполнил задание:

brew link --overwrite node

Он принудительно устанавливает ссылку и перезаписывает все конфликтующие файлы:

person MCMatan    schedule 21.10.2016

Вы можете изменить разрешение файла "/usr/local/bin/node", например "chmod +w /usr/local/bin/node", чтобы сделать его доступным для записи.

person Mavlarn    schedule 26.09.2013