zoukankan      html  css  js  c++  java
  • php: dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.63.dylib

    mac上本来安装了php7.1版本,后来安装了node,结果再次执行php的时候,出现错误

    dyld: 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

    ,查了一下,发现node升级了icu4c的版本到了67.1,导致php7.1使用的63版本链接库找不到

    解决方法:

    网上查找试了很多方法但是都不行,后来在stackoverflow上找到了解决方法,记录在此:

    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
    }

    参考:

    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报错

  • 相关阅读:
    大数乘法的几种算法分析及比较(2014腾讯南京笔试题)
    【经典数据结构】Trie
    [LeetCode] MaximumDepth of Binary Tree
    [LeetCode] Minimum Depth of Binary Tree
    二叉树相关题目总结
    python之函数基础总结
    python基础之文件处理总结
    利用for循环和range输出9 * 9乘法口诀表
    购物车程序作业
    字典练习
  • 原文地址:https://www.cnblogs.com/ZhYQ-Note/p/13597890.html
Copyright © 2011-2022 走看看