php: dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.63.dylib
2021-01-05 20:28
标签:解决方法 psql 版本 active OWIN brew color try apr mac上本来安装了php7.1版本,后来安装了node,结果再次执行php的时候,出现错误 ,查了一下,发现node升级了icu4c的版本到了67.1,导致php7.1使用的63版本链接库找不到 解决方法: 网上查找试了很多方法但是都不行,后来在stackoverflow上找到了解决方法,记录在此: 参考: https://stackoverflow.com/questions/55826221/install-icu4c-version-63-with-homebrew Install icu4c version 63 with Homebrew 执行npm时icu4c报错,使用brew安装旧版本icu4c,icu4c 62.1, 执行node时icu4c报错 php: dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.63.dylib 标签:解决方法 psql 版本 active OWIN brew color try apr 原文地址:https://www.cnblogs.com/ZhYQ-Note/p/13597890.htmldyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.63.dylib
Referenced from: /usr/local/opt/php@7.1/bin/php
Reason: image not found
[1] 86657 abort php -v
22
16
I was trying to start psql but got
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
When I used postgres -D /usr/local/var/postgres, got the following error:
dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.63.dylib
Referenced from: /usr/local/bin/postgres
Reason: image not found
[1] 2559 abort postgres -D /usr/local/var/postgres
A quick search on libicui18n.63.dylib showed me I need icu4c lib with version 63. However brew list icu4c says I have the version 64.2.
I tried both brew install icu4c 63 & brew install icu4c@63 but no luck.
Can anyone help, please? Thanks in advance.
postgresql homebrew icu4c
share improve this question follow
asked Apr 24 ‘19 at 9:00
ogirginc
2,84011 gold badge1919 silver badges3030 bronze badges
add a comment
3 Answers
Active
Oldest
Votes
97
Solution:
1) cd to Homebrew‘s formula directory
cd $(brew --prefix)/Homebrew/Library/Taps/homebrew/homebrew-core/Formula
2) Find desired commit (version 63 for icu4c) to checkout
git log --follow icu4c.rb
3) Checkout to a new branch
git checkout -b icu4c-63 e7f0f10dc63b1dc1061d475f1a61d01b70ef2cb7
4) Reinstall the library with the new version
brew reinstall ./icu4c.rb
5) Switch to the reinstalled version
brew switch icu4c 63.1
6) Checkout back to master
git checkout master
Sources:
Homebrew install specific version of formula?
http://hanxue-it.blogspot.com/2018/08/macos-homebrew-installing-older-version-of-software.html
Bonus for those who ended up using this more than once:
# zsh
function hiicu63() {
local last_dir=$(pwd)
cd $(brew --prefix)/Homebrew/Library/Taps/homebrew/homebrew-core/Formula
git checkout icu4c-63
brew reinstall ./icu4c.rb
brew switch icu4c 63.1
git checkout master
cd $last_dir
}
文章标题:php: dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.63.dylib
文章链接:http://soscw.com/index.php/essay/40342.html