Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python: No Module named Zlib, Mac OS X El Capitan 10.11.6

I'm trying to convert my python command line application to an app with py2app. Everytime I try to import zlib or try to install setuptools , I get an error : no module named zlib.

Python was installed with brew. I searched every corner of the internet and stack overflow, I have reinstalled python with brew , I have installed all Xcode CLI related stuff with :

xcode-select --install

I also ran :

ls /usr/include/zlib.h

and I can see that zlib is there where it is supposed to be.

Reinstalled with:

brew reinstall python

Unfortunately that didn't work for me. I can't get what is wrong.

Any ideas?

like image 730
Luis Valdez Avatar asked Aug 03 '16 16:08

Luis Valdez


3 Answers

My solution on Mojave (10.14), simply by creating symbolic link. Please take note your zlib and python version may vary.

In terminal run the following:-

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
like image 75
xwspot Avatar answered Oct 25 '22 11:10

xwspot


I had the same issue and the solution at https://github.com/Homebrew/homebrew-core/issues/29176 worked for me: re-install python@2:

brew reinstall python@2

(Before I tried this I also tried installing zlib with Homebrew -- brew install zlib; this may or may not have contributed to it working.)

like image 15
Frans Avatar answered Nov 01 '22 09:11

Frans


Installing the MacOS SDK Headers as suggested by this issue solves this problem fairly cleanly.

To do so, run the following (for MacOS 10.14):

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

and then brew install python

like image 4
Thomas B in BDX Avatar answered Nov 01 '22 09:11

Thomas B in BDX