Installing node with brew fails on Mac OS Sierra
I'm trying to install node with homebrew on macOS Sierra. I run
brew install node
After a seemingly successful install I get the following when trying to run 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
Solution 1:
This is the series of incantations that eventually worked for me based on this link suggested by @robertklep and @vovkasm.
brew uninstall --force node
brew uninstall icu4c && brew install icu4c
brew unlink icu4c && brew link icu4c --force
brew install node
I'm not sure if they're all needed, but given that I can't get my machine in the previous state... I'll just leave this info here, maybe it'll be useful for somebody else.
Solution 2:
In my case, brew upgrade node
resolve the problem :)
Solution 3:
Well I got this error trying to install @angular/cli
, realized node might be out of date. Following @mircealungu 's exact steps didn't quite work for me, here is the modified version that worked for me.
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
Solution 4:
Upgrading node fixed a problem.
brew upgrade node
Solution 5:
I recently encountered a similar issue (after doing
brew switch node 9.8.0
to downgrade to a previous version of node)
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
The issue is that node is picky about which version of icu4c it's looking for, and the version I had installed (62) was higher than node was expecting.
To fix, I made sure I had version 60 of icu4c selected.
First I found which versions I had with brew info icu4c
, then did
brew switch icu4c 60.2
to select the one node was expecting.