Python:没有名为Zlib的模块,Mac OS X El Capitan 10.11.6

时间:2016-08-03 16:47:38

标签: python macos homebrew zlib

我正在尝试将我的python命令行应用程序转换为带有py2app的应用程序。 每次我尝试导入zlib或尝试安装setuptools时,都会收到错误:没有名为zlib的模块。

Python是用brew安装的。 我搜索了互联网的每个角落和堆栈溢出,我已经重新安装了使用brew的python,我已经安装了所有与Xcode CLI相关的东西:

xcode-select --install

我也跑了:

ls /usr/include/zlib.h

我可以看到zlib应该在那里。

重新安装:

brew reinstall python

不幸的是,这对我不起作用。我不能搞错。

有什么想法吗?

5 个答案:

答案 0 :(得分:14)

我遇到了同样的问题,https://github.com/Homebrew/homebrew-core/issues/29176处的解决方案对我有用:重新安装python@2

brew reinstall python@2

(在尝试此操作之前,我还尝试过使用Homebrew-brew install zlib安装zlib;这可能有助于它的正常工作。)

答案 1 :(得分:5)

另一个答案的解决方案对我有用。这可能是xcode安装的问题:https://stackoverflow.com/a/34996223/2792278

在终端运行中

xcode-select --install

并使用brew重新安装python。

答案 2 :(得分:2)

按照this issue的建议安装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 :(得分:1)

我在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

答案 4 :(得分:-13)

终于找到了答案。

使用后:

brew doctor

据布鲁医生说,我发现我的路径中有更多配置脚本。

所以我做了:

sudo rm -rf /Library/Frameworks/Python.framework/

下一个:

brew prune

最后:

brew install python

也有一些链接问题所以我跑了:

 brew link python3