2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【エラー対処】pyenvでinstallができなくなった

Posted at

はじめに

以前pyenv, pyenv-virtualenvをインストールした記事を書いており、
これからはAnaconda依存ではなくバージョンごとに環境が変えられるなぁ〜と思っていました。

しかし、すぐさまエラーが発生してしまいました。
原因は複数考えられますが

  1. 先日、Macのアカウント名を変更した(調べれば分かりますが、結構面倒で、アカウント変更後も不具合が多く出て、修復に大事時間が取られました。)
  2. bashをやめてfishにした。

が大きな要素かと思っています。

エラー内容

pyenv install 3.7.3
python-build: use openssl@1.1 from homebrew
python-build: use readline from homebrew
Downloading Python-3.7.3.tar.xz...
-> https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz
Installing Python-3.7.3...
python-build: use readline from homebrew
python-build: use zlib from xcode sdk

BUILD FAILED (OS X 10.14.5 using python-build 20180424)

Inspect or clean up the working tree at /var/folders/q0/x66vgv1s6d1bf5rh1b0f79cc0000gn/T/python-build.20190909205347.67210
Results logged to /var/folders/q0/x66vgv1s6d1bf5rh1b0f79cc0000gn/T/python-build.20190909205347.67210.log

Last 10 log lines:
  File "/var/folders/q0/x66vgv1s6d1bf5rh1b0f79cc0000gn/T/tmpqib00zdi/pip-19.0.3-py2.py3-none-any.whl/pip/_internal/cli/cmdoptions.py", line 22, in <module>
  File "/var/folders/q0/x66vgv1s6d1bf5rh1b0f79cc0000gn/T/tmpqib00zdi/pip-19.0.3-py2.py3-none-any.whl/pip/_internal/utils/hashes.py", line 10, in <module>
  File "/var/folders/q0/x66vgv1s6d1bf5rh1b0f79cc0000gn/T/tmpqib00zdi/pip-19.0.3-py2.py3-none-any.whl/pip/_internal/utils/misc.py", line 21, in <module>
  File "/var/folders/q0/x66vgv1s6d1bf5rh1b0f79cc0000gn/T/tmpqib00zdi/pip-19.0.3-py2.py3-none-any.whl/pip/_vendor/pkg_resources/__init__.py", line 35, in <module>
  File "/private/var/folders/q0/x66vgv1s6d1bf5rh1b0f79cc0000gn/T/python-build.20190909205347.67210/Python-3.7.3/Lib/plistlib.py", line 65, in <module>
    from xml.parsers.expat import ParserCreate
  File "/private/var/folders/q0/x66vgv1s6d1bf5rh1b0f79cc0000gn/T/python-build.20190909205347.67210/Python-3.7.3/Lib/xml/parsers/expat.py", line 4, in <module>
    from pyexpat import *
ModuleNotFoundError: No module named 'pyexpat'
make: *** [install] Error 1

pythonを新しくpyenvでinstallしようとすると、エラーが発生し

ModuleNotFoundError: No module named 'pyexpat'

がないと勧告されます。

とりあえずfishをやめる

fishはbashと同じでシェルの仲間ですが、.bash_profileを読み込んでくれないそうです。
正確には、文法が異なる、といったほうが正しいのかもしれません。

よって、下記のコマンドでbashにデフォルトシェルを戻しました。

chsh -s /bin/bash

chshはデフォルトシェルを変更するコマンドです。

XcodeのCommandLineToolのBeta版を入れる

https://qiita.com/karon9/items/875b8a0053fa1c685386
のサイトを参考に

からCommand Line Tools for Xcode Betaの最新版をダウンロード・インストールする。

その結果

ganariya$ pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
package-id: com.apple.pkg.CLTools_Executables
version: 11.0.0.0.1.1565314599
volume: /
location: /
install-time: 1568031534
groups: com.apple.FindSystemFiles.pkg-group 

となり、バージョンが上がり


ganariya$ pyenv install 3.7.3
python-build: use openssl@1.1 from homebrew
python-build: use readline from homebrew
Installing Python-3.7.3...
python-build: use readline from homebrew
python-build: use zlib from xcode sdk
Installed Python-3.7.3 to /usr/local/var/pyenv/versions/3.7.3

無事インストール完了できた。うれしい。

まとめ

Fishを使うとBashの.bash_profileがきちんと読み込めない。
(これは、文法がちがうため)

また、MacでCommand Lineツールのエラーで上記のエラーが出るので新しいバージョンを入れればきちんとインストールできる。

(ただ、もともとはうまく言ってて、アカウント名を変更したらこうなったので、多分アカウント名の変更時になんか変な事になってたんだと思う。)

2
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?