簡體   English   中英

無法釀造安裝節點

[英]can't brew install node

我正在嘗試通過自制軟件升級我的節點,但遇到了問題,因為我想我試圖通過網站下載。 我對終端很陌生。 我試圖尋找答案,但很多人說你可以刪除未生成的頭文件。 我不知道該怎么做。 但是由於某種原因,當我嘗試 brew install node 時,它​​說 brew link 步驟沒有成功完成。

我也嘗試 brew link node 但這也不起作用。 我沒有選擇,所以我來到了這里。

[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.

有兩個步驟。

  1. 只需運行這四個命令:
    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
    sudo chown -R `whoami`:admin /usr/local/lib/dtrace 
  1. 最后,運行覆蓋命令:
    brew link --overwrite node

我在同樣的情況下遇到了同樣的問題。 我能夠通過以下方式成功安裝 brew 版本:

  1. 運行brew install node
  2. 記下導致問題的模塊並將其刪除。 在您的情況下,這將是/usr/local/include/node
  3. 卸載 - brew uninstall node
  4. 重新安裝 - brew install node

對於每個剩余的有問題的目錄(實際上大約有 3 個不同的目錄),我不得不重復此過程幾次,並且安裝最終成功而沒有任何問題。

我在 Mac OS High Sierra 上的新 MacBook Pro 上遇到了這個問題。 我收集到 brew 試圖使用 /usr/local 下不存在的名為 include 和 lib 的目錄。 由於 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

我有同樣的錯誤:

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

對於那些在 MacOS 上運行高山脈的人:

我嘗試使用chown命令授予權限,然后通過自制軟件卸載然后重新安裝節點,但沒有任何效果。

我剛剛訪問了這個站點https://nodejs.org/en/download/並下載了 64 位 macOS .pkg,它運行良好。 我只是通過在終端中輸入命令node來測試它。

為 mac 下載哪個版本的節點的圖像

brew postinstall nodebrew link --overwrite node似乎沒有幫助。

經過幾輪brew uninstall nodebrew 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將為您執行所有具有權限的正確鏈接。

由於過去使用sudo安裝或手動安裝等,可能的權限設置為root:wheel

我有一個非常相似的鏈接問題。 我無法讓它工作。 我試圖 chmod /usr/local/include/node 以便我可以寫入指向它的鏈接,但遇到了另一個錯誤。 作為最終解決方案,我剛剛從https://nodejs.org/download/重新安裝了節點

我再次有一個工作節點提示! 我很想通過 brew 進行更新,但僅使用網站上的 pkg 安裝程序就為我省去了很多麻煩。 我知道這可能不是您正在尋找的解決方案,但我只是想分享我對同一問題的經驗。 我希望它有幫助!

brew link --overwrite node

錯誤:無法符號鏈接 (...)

/usr/xxx

sudo chown -R 'whoami?':admin xxx
brew link --overwrite node

沖洗並重復

對我來說,我必須運行 brew doctor 這表明我沒有寫訪問權限並且必須運行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 目標 /usr/local/include/node/openssl/archs/aix-gcc/asm/include/openssl/ opensslconf.h 已經存在。 您可能想要刪除它:

嘗試這個:

brew link --overwrite --dry-run node | xargs rm
brew link node 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM