前提・実現したいこと
pyenv は Homebrewでインストールしました。
pyenvでPythonをインストールしたいです。
pyenv install 3.9.4を実行すると以下のようなエラーになりました。
mkdir: /usr/local/opt/zlib/lib: Permission denied
で検索しましたが、解決方法がわかりませんでした。
よろしくお願いいたします。
環境
macOS big sur 11.3.1
Macbook Air (M1,2020)
チップ Apple M1
(ターミナルで「Rossetaを使用して開く」にテェックしています。)
発生している問題・エラーメッセージ
python-build: use openssl@1.1 from homebrew python-build: use readline from homebrew Downloading Python-3.9.4.tar.xz... -> https://www.python.org/ftp/python/3.9.4/Python-3.9.4.tar.xz Installing Python-3.9.4... mkdir: /usr/local/opt/zlib/lib: Permission denied BUILD FAILED (OS X 11.3.1 using python-build 20180424) Inspect or clean up the working tree at /var/folders/sb/mv3r1xbx3fbb4fm4b6777gg00000gn/T/python-build.20210515123109.74731 Results logged to /var/folders/sb/mv3r1xbx3fbb4fm4b6777gg00000gn/T/python-build.20210515123109.74731.log Last 10 log lines: /var/folders/sb/mv3r1xbx3fbb4fm4b6777gg00000gn/T/python-build.20210515123109.74731 ~ /var/folders/sb/mv3r1xbx3fbb4fm4b6777gg00000gn/T/python-build.20210515123109.74731/Python-3.9.4 /var/folders/sb/mv3r1xbx3fbb4fm4b6777gg00000gn/T/python-build.20210515123109.74731 ~
試したこと
1 Xcodeをインストール
$ xcode-select --install xcode-select: error: command line tools are already installed, use "Software Update" to install updates
2 Homebrewをインストール
$ brew doctor Your system is ready to brew.
3 pyenvインストール
$ pyenv --version pyenv 1.2.27
4quickquipさんから教えていただいて実行したコマンドとその結果です。
$ brew --prefix /opt/homebrew $ /usr/bin/uname -m arm64
/optを/usr/localに移せばいいのでしょうか?
CPUはなんでしょうか? M1の場合は"ターミナルでRosettaを有効にしているか"も合わせて質問を編集して追記してください。
URLに載っている通り、pyenv は Homebreでインストールしたと考えていいですか?
(質問するのに「参考した記事」は回答のあてになりません。「あなたがやったこと」が必要です)
brew doctor して、Homebrewに異常がないか確認した方がよいと思います。解決方法もだいたいはその結果に書いてあるはずです。
>mkdir: /usr/local/opt/zlib/lib: Permission denied
ディレクトを作る権限がないというエラーが書いてあります。
>色々調べたのですが、
どんな調べ方をしたのでしょうか?
$ brew list
... pyenv zlib readline ...
とzlibがあるのですが、
$cd /usr/local/
$ ls
bin lib
となり、/usr/local/opt/zlib/libのoptがありません。
chmodで権限を変えようと思ったのですが、この方法は誤りでしょうか?
まるで homebrew が /usr/local 下にないのに /usr/local を使おうとしているみたいに見えますね。
brew --prefix
と
/usr/bin/uname -m
の結果は載せられますか。(homebrewのインストール先と、Rosettaが有効かどうかを確認できるコマンドです)
回答1件
あなたの回答
tips
プレビュー