Mac OS Sierra에서 Brew로 노드 설치 실패


92

macOS Sierra에 homebrew로 노드를 설치하려고합니다. 난 달린다

 brew install node

겉보기에 성공적인 설치 후 실행하려고 할 때 다음이 표시됩니다 node.

dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.58.dylib
  Referenced from: /usr/local/bin/node
  Reason: image not found
Abort trap: 6

1
아마도 (대체 php56와 함께 node)하는 데 도움이,하지만 난 맥 자신을 위해 공식 Node.js를 설치 프로그램을 사용합니다.
robertklep

6
이것은 나를 위해 일한 : 양조 업데이 트를 && 양조 다시 설치 nodejs
스콧 플랙


@ScottFlack, 양조 업데이트; brew 다시 설치 nodejs 도 작동 할 수 있습니다. brew 업데이트 가 0이 아닌 경우 에도 다시 설치 nodejs 를 통과 할 수 있기 때문입니다 (예 : 잘못 구성되거나 사용되지 않은 탭으로 인해).
emallove 19-02-25

답변:


109

이것은 @robertklep과 @vovkasm 제안한 링크를 기반으로 결국 저에게 효과가 있었던 일련의 주문입니다 .

brew uninstall --force node
brew uninstall icu4c && brew install icu4c
brew unlink icu4c && brew link icu4c --force
brew install node

모두 필요한지 확실하지 않지만 이전 상태에서 내 컴퓨터를 가져올 수 없다는 점을 감안할 때이 정보를 여기에 남겨 두겠습니다. 다른 사람에게 유용 할 수 있습니다.


3
감사합니다. Mac Os 10.13.4 High Sierra에서 나를 위해 일했습니다. 나는 힘의 필요성을 결코 이해하지 못할 것이라고 맹세합니다. "이번엔 정말 진심이야 ..."
Matt

3
이 작업을 위해 노드 8도 제거해야했습니다. brew uninstall node@8. medium.com/@mahcloud/mac-brew-node-10-upgrade-55d3e910eebb
jkschneider

6
명령을 제거하기 위해 --ignore-dependencies를 추가했으며 훌륭하게 작동했습니다.
Almas Dusal

1
강제로 제거하고 다시 설치하면 효과가 있습니다!
Graystripe

2
NPM icu4c에서 다른 응용 프로그램에 대한 종속성이므로 제거 할 수 없다는 오류가 발생할 수 있습니다 . 이 실행을 피하려면 : brew uninstall --ignore-dependencies icu4c && brew install icu4c. 이 명령은 @mircealungu의 두 번째 명령을 대체합니다.
reelyard

70

제 경우에는 brew upgrade node문제를 해결하십시오. :)


8
brew upgrade대신 원하는 것 같아 update오류를주었습니다.
getmicah

31

글쎄, 나는이 오류를 설치하려고 시도 @angular/cli했는데, 깨달은 노드가 오래된 것 같습니다. @mircealungu의 정확한 단계를 따르는 것은 저에게 효과적이지 않았습니다. 여기 저에게 효과가있는 수정 된 버전이 있습니다.

brew uninstall --ignore-dependencies --force node
brew uninstall --ignore-dependencies --force icu4c
brew install icu4c
brew unlink icu4c && brew link icu4c --force
brew install node

2
이것은 나를 위해 해냈습니다. 또한 현재 프로젝트가 node_modules ( rm -rf node_modules)를 죽이고 npm install다시 모든 것을 도왔습니다 .
notacouch

1
brew를 통해 php56-pgsql을 설치 한 후이 문제가 발생했습니다.
Felice Ostuni

3
감사합니다.이 답변이 제 생명을 구했습니다. 이 단계 외에 수행해야하는 작업이 있습니다.
yoshi

24

노드를 업그레이드하면 문제가 해결되었습니다.

brew upgrade node 

23

최근에 비슷한 문제가 발생했습니다 ( brew switch node 9.8.0이전 버전의 노드로 다운 그레이드 한 후 ).

dyld: Library not loaded: 
/usr/local/opt/icu4c/lib/libicui18n.60.dylib
  Referenced from: /usr/local/bin/node
  Reason: image not found
Abort trap: 6

문제는 노드가 찾고있는 icu4c 버전에 대해 까다 롭고 내가 설치 한 버전 (62)이 노드가 예상했던 것보다 높았다는 것입니다.

수정하기 위해 icu4c 버전 60을 선택했는지 확인했습니다.

먼저 내가 가지고있는 버전을 찾은 brew info icu4c다음 brew switch icu4c 60.2예상하는 노드 하나를 선택했습니다.


노드가 버전 60.2를 원한다는 것을 어떻게 결정 했습니까? 감사합니다
raison

1
@raison 노드가 찾고있는 icu4c의 버전은 dyld 오류 메시지에 있습니다. 이 경우 60. 의 출력과 비교 brew info icu4c하여 호환 가능한 버전을 찾으십시오 60.2.
neatonk

그것이 최고의 답변입니다
saza

13

/usr/local/opt/icu4c/lib/libicui18n.58.dylib시스템에 파일 이없는 것 같습니다 .

icu4cHomebrew와 함께 설치 되었는지 확인하십시오 .

  1. brew info icu4c
  2. 이미 설치된 경우 다시 설치하십시오. brew reinstall icu4c
  3. 설치되지 않은 경우 설치를 시도하십시오. brew install icu4c

12

높은 세이라의 경우 "브루 업그레이드"만으로도 마법이 만들어집니다!


2
Mojave도 마찬가지입니다. PHP 설치에 문제가 있었고 방금 명령을 입력했습니다. 감사.
Julian Schmuckli 2019

9

먼저 노드와 icu4c를 제거하고 모든 버전을 강제로 제거합니다.

brew uninstall --force --ignore-dependencies node icu4c

Node 버전 8을 설치 한 후

brew install node@8

이미 설치되어 있다면 업그레이드 만하십시오

brew upgrade node@8

그리고 입력

node -v

v8.11.1


8

나에게는 icu4cbrew 에서 설치 하는 데 분명히 문제가 있었습니다.

brew reinstall icu4c

다시 설치 icu4c합니다.

설치하지 않은 경우

brew install icu4c

1
정말 감사합니다. 시간과 노력이 많이 절약되었습니다. 이 답변을 매우 오랫동안 검색합니다.
DC

이것은 받아 들여진 대답이어야합니다. 이 명령은 나를 구했습니다
Jais Anasrulloh Ja'fari

7

이것은 나를 위해 트리거 brew upgrade되고 brew update실행되었습니다. 문제로 표시된 두 항목을 간단히 다시 설치하여 문제를 해결할 수있었습니다.

brew reinstall node
brew reinstall icu4c

4

위의 어느 것도 나를 위해 일하지 않았습니다. 저는 High Sierra를 사용하고 있습니다.

나를 위해 고친 것은 brew upgrade


4

여기에서 잘 작동하는 솔루션을 찾았 습니다 . 아래에 간단히 명령을 내리겠습니다.

먼저 homebrew 공식 디렉토리로 이동하십시오.

cd $(brew --prefix)/Homebrew/Library/Taps/homebrew/homebrew-core/Formula

힘내 로그 :

git log --follow icu4c.rb

필요한 버전과 일치하는 커밋 해시를 선택합니다. 버전 61.1이 필요했기 때문에 6d9815커밋 을 선택했습니다 .

git checkout -b icu4c-61.1 6d9815

재설치 :

brew reinstall ./icu4c.rb

스위치:

brew switch icu4c 61.1

그것은 나를 위해 그것을 고쳤습니다.

크레딧 : hanxue


1
또한 다른 라이브러리 문제에 대한 훌륭한 일반적인 수정입니다! 이전에 다른 라이브러리와이 문제를 가지고 있었다, 그러나 이것은 지금까지 가장 깨끗한 솔루션입니다 (자식 지점으로, 단지 이전 버전을 체크 아웃하는 대신 수동으로 공식을 편집)
리키 쿡

3

나를 위해 일한 것은 없지만 이것을 실행하면 효과가 있습니다.

brew link --overwrite node

1

brew uninstall --force node
brew uninstall --ignore-dependencies icu4c
brew unlink icu4c && brew link icu4c --force
brew install node


1

이 오류는 컴퓨터를 마이그레이션 한 후 나에게 주어졌습니다.

모두가 설치된 비록 내가 확인 갔을 때, node -v또는 npm version,이 오류를 얻을 것입니다.

수정 사항 brew reinstall icu4c.


1

내 로컬 PHP 설치와 동일한 문제가 발생했습니다.

dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.62.dylib
  Referenced from: /usr/local/bin/php
  Reason: image not found
Abort trap: 6

이 명령으로 문제를 해결했습니다. (버전 확인)

brew link --overwrite --force php@7.1

1

나는 고정

cd /usr/local/Cellar
rm -rf node*/
rm -rf icu4c/
brew install node

0

icu4u 참조 경로가 제대로 설정되지 않은 것 같습니다.

먼저 주석 promt에 아래 주석을 넣어 icu4c를 설치할 수 있는지 확인하십시오.

brew info icu4c

아니면 다시 설치

brew reinstall icu4c

PATH에이 소프트웨어가 먼저 있어야하는 경우 다음을 실행하십시오.

echo 'export PATH="/usr/local/opt/icu4c/bin:$PATH"' >> ~/.bash_profile

이것이 도움이 될 수 있기를 바랍니다 !!!!!


0

일반적인 소프트웨어만큼 쉽습니다. 공식 사이트 : NodeJS 에서 설치 패키지를 다운로드하면됩니다.

권장 버전 (현재 8.11.3,로 끝남 .pkg) 을 다운로드하고 일반 소프트웨어로 설치하면 사용할 수 있습니다. 나는 많은 방법을 시도했지만 이것이 나에게 효과적입니다.


0

컴퓨터를 다시 시작하십시오. 그것은 나를 도왔다.


0

export PATH="/usr/local/opt/icu4c/bin:$PATH"~/.bash_profile파일 에서 제거 하고 내 문제를 해결했습니다.

내 오류는 다음과 같습니다.

dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.63.dylib
  Referenced from: /usr/local/opt/node@10/bin/node
  Reason: image not found
Abort trap: 6

/usr/local/opt/icu4c/lib포함libicui18n.64.dylib

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.