web-dev-qa-db-ja.com

Python:Zlibという名前のモジュールはありません、Mac OS X El Capitan 10.11.6

pythonコマンドラインアプリケーションをpy2appを使用してアプリに変換しようとしています。zlibをインポートしようとしたり、setuptoolsをインストールしようとしたりするたびに、エラーが発生します:zlibという名前のモジュールがありません。

Pythonはbrewでインストールされました。私はインターネットとスタックオーバーフローの隅々を検索し、python with brewを再インストールしました。XcodeCLI関連のものをすべてインストールしました:

xcode-select --install

私も走った:

ls /usr/include/zlib.h

そして、zlibが本来あるべき場所にあることがわかります。

再インストール:

brew reinstall python

残念ながら、それは私にはうまくいきませんでした。何が悪いのかわからない。

何か案は?

12
Luis Valdez

私は同じ問題を抱えていて、 https://github.com/Homebrew/homebrew-core/issues/29176 で解決策がありました:再インストールpython@2

brew reinstall python@2

(これを試す前に、Homebrewでzlibをインストールしてみました--brew install zlib;これは、それが機能することに貢献したかもしれないし、貢献しなかったかもしれません。)

15
Frans

別の答えからの解決策は私のために働いた。 xcodeのインストールに問題がある可能性があります: https://stackoverflow.com/a/34996223/2792278

ターミナルランで

xcode-select --install

そして、brewでpythonを再インストールします。

6

この問題 で提案されているようにMacOS SDKヘッダーをインストールすると、この問題はかなりきれいに解決されます。

これを行うには、以下を実行します(MacOS 10.14の場合)。

xcode-select --install
Sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /

その後 brew install python

3
Thomas

シンボリックリンクを作成するだけで、Mojave(10.14)に関する私のソリューション。 zlibとpythonバージョンは異なる場合があることに注意してください。

ターミナルで以下を実行します:-

brew install zlib

ln -s /usr/local/Cellar/zlib/1.2.11/include/* /usr/local/include

ln -s /usr/local/Cellar/zlib/1.2.11/lib/* /usr/local/lib

brew reinstall python
3
xwspot