eureka

M1 Macのphpが壊れた

0

どうもこんにちは。

最近バックエンドの勉強を始めまして、今からLaravelインストールするぞ!ってときに悲劇が起こりました。

$ php -v
dyld[83388]: Library not loaded: /opt/homebrew/opt/icu4c/lib/libicuio.73.dylib
  Referenced from: <85158C36-BFA2-3C51-90BC-0FC55A2AE62D> /Users/username/.anyenv/envs/phpenv/versions/8.1.0/bin/php
  Reason: tried: '/opt/homebrew/opt/icu4c/lib/libicuio.73.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/opt/icu4c/lib/libicuio.73.dylib' (no such file), '/opt/homebrew/opt/icu4c/lib/libicuio.73.dylib' (no such file), '/usr/local/lib/libicuio.73.dylib' (no such file), '/usr/lib/libicuio.73.dylib' (no such file, not in dyld cache), '/opt/homebrew/Cellar/icu4c/74.2/lib/libicuio.73.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/Cellar/icu4c/74.2/lib/libicuio.73.dylib' (no such file), '/opt/homebrew/Cellar/icu4c/74.2/lib/libicuio.73.dylib' (no such file), '/usr/local/lib/libicuio.73.dylib' (no such file), '/usr/lib/libicuio.73.dylib' (no such file, not in dyld cache)
zsh: abort      php -v

PHPが・・・こわれている・・・・

環境

M1 macOS 13.3.1
Homebrew 4.3.13
anyenv 1.1.5
phpenv v1.0.0

結論

phpenvでインストールされているphpをアンインストールして、再度インストールで直りました!

$ phpenv versions
  system
  8.0.30
  8.0.8
* 8.1.0 (set by /Users/username/.anyenv/envs/phpenv/version)

# 全部アンインストール
$ phpenv uninstall 8.0.30
$ phpenv uninstall 8.0.8
$ phpenv uninstall 8.1.0

# 再度必要なバージョンをインストール
$ phpenv install 8.1.0

$ php -v
PHP 8.1.0 (cli) (built: Aug  7 2024 16:34:15) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.0, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.0, Copyright (c), by Zend Technologies
    with Xdebug v3.3.1, Copyright (c) 2002-2023, by Derick Rethans

参考にしたサイト

phpの環境が動かなくなったので再構成した(phpenv)

壊れた原因はHomebrewのアップグレードと他の記事でもたくさん見かけました。
確かに私もこの前アップグレードしたような・・ないような・・・?

解決するのに「icu4c」の該当のバージョンを入れるなど他にもいろいろ調べたのですが、エラー文が少し違ったのと、Formulaeのパスが違うようで見つけられず・・と苦戦をしていたところ、この方法で直りました!カンタンでよかった〜

0