Homebrew-core: Node 10.4.1 installation fail on Mac 10.14 Beta: ImportError: No module named zlib

Created on 20 Jun 2018  路  8Comments  路  Source: Homebrew/homebrew-core

Please note we will close your issue without comment if you delete, do not read or do not fill out the issue checklist below and provide ALL the requested information. If you repeatedly fail to use the issue template, we will block you from ever submitting issues to Homebrew again.

  • [x] are reporting a bug others will be able to reproduce and not asking a question. If you're not sure or want to ask a question do so on our Discourse: https://discourse.brew.sh
  • [x] have a problem with brew install (or upgrade, reinstall) a single, official formula (not cask)? If it's a general brew problem please file this issue at Homebrew/brew: https://github.com/Homebrew/brew/issues/new/choose. If it's a brew cask problem please file this issue at https://github.com/Homebrew/homebrew-cask/issues/new/choose. If it's a tap (e.g. Homebrew/homebrew-php) problem please file this issue at the tap.
  • [x] ran brew update and can still reproduce the problem?
  • [x] ran brew doctor, fixed all issues and can still reproduce the problem?
  • [x] ran brew gist-logs <formula> (where <formula> is the name of the formula that failed) and included the output link?
  • [x] if brew gist-logs didn't work: ran brew config and brew doctor and included their output with your issue?

Here is the brew gist-logs node output : https://gist.github.com/15f2f526f74b7c13a137b70e08c76f6b

To help us debug your issue please explain:

  • What you were trying to do (and why)
    I was trying to install node, because I need it to develop on my Mac.
  • What happened (include command output)
brew install node yarn watchman
==> Installing dependencies for node: sphinx-doc, gdbm, makedepend, openssl, readline, sqlite, python@2, icu4c
==> Installing node dependency: sphinx-doc
...
==> Installing node
==> Downloading https://nodejs.org/dist/v10.4.1/node-v10.4.1.tar.xz
######################################################################## 100.0%
==> Downloading https://github.com/nodejs/node/commit/400df22c6bfefc3c3f54ebd7c5fd0d38f5137841.patch?full_index=1
######################################################################## 100.0%
==> Patching
==> Applying 400df22c6bfefc3c3f54ebd7c5fd0d38f5137841.patch
patching file configure
==> ./configure --prefix=/usr/local/Cellar/node/10.4.1 --without-npm --with-intl=system-icu
==> make install
Last 15 lines from /Users/guillaumehain/Library/Logs/Homebrew/node/02.make:
  clang '-D_DARWIN_USE_64_BIT_INODE=1' '-DDSO_DLFCN' '-DHAVE_DLFCN_H' '-DNDEBUG' '-DOPENSSL_THREADS' '-DOPENSSL_NO_DYNAMIC_ENGINE' '-DOPENSSL_PIC' '-DOPENSSL_IA32_SSE2' '-DOPENSSL_BN_ASM_MONT' '-DOPENSSL_BN_ASM_MONT5' '-DOPENSSL_BN_ASM_GF2m' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DRC4_ASM' '-DMD5_ASM' '-DAES_ASM' '-DVPAES_ASM' '-DBSAES_ASM' '-DGHASH_ASM' '-DECP_NISTZ256_ASM' '-DPADLOCK_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -I/usr/local/Cellar/icu4c/61.1/include -I../deps/openssl/openssl -I../deps/openssl/openssl/include -I../deps/openssl/openssl/crypto -I../deps/openssl/openssl/crypto/include -I../deps/openssl/openssl/crypto/modes -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-x86_64-cc/asm/include -I../deps/openssl/openssl/include  -Os -gdwarf-2 -mmacosx-version-min=10.7 -arch x86_64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/.deps//private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/openssl-cli/deps/openssl/openssl/apps/ts.o.d.raw   -c -o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/openssl-cli/deps/openssl/openssl/apps/ts.o ../deps/openssl/openssl/apps/ts.c
  clang '-D_DARWIN_USE_64_BIT_INODE=1' '-DDSO_DLFCN' '-DHAVE_DLFCN_H' '-DNDEBUG' '-DOPENSSL_THREADS' '-DOPENSSL_NO_DYNAMIC_ENGINE' '-DOPENSSL_PIC' '-DOPENSSL_IA32_SSE2' '-DOPENSSL_BN_ASM_MONT' '-DOPENSSL_BN_ASM_MONT5' '-DOPENSSL_BN_ASM_GF2m' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DRC4_ASM' '-DMD5_ASM' '-DAES_ASM' '-DVPAES_ASM' '-DBSAES_ASM' '-DGHASH_ASM' '-DECP_NISTZ256_ASM' '-DPADLOCK_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -I/usr/local/Cellar/icu4c/61.1/include -I../deps/openssl/openssl -I../deps/openssl/openssl/include -I../deps/openssl/openssl/crypto -I../deps/openssl/openssl/crypto/include -I../deps/openssl/openssl/crypto/modes -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-x86_64-cc/asm/include -I../deps/openssl/openssl/include  -Os -gdwarf-2 -mmacosx-version-min=10.7 -arch x86_64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/.deps//private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/openssl-cli/deps/openssl/openssl/apps/verify.o.d.raw   -c -o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/openssl-cli/deps/openssl/openssl/apps/verify.o ../deps/openssl/openssl/apps/verify.c
  clang '-D_DARWIN_USE_64_BIT_INODE=1' '-DDSO_DLFCN' '-DHAVE_DLFCN_H' '-DNDEBUG' '-DOPENSSL_THREADS' '-DOPENSSL_NO_DYNAMIC_ENGINE' '-DOPENSSL_PIC' '-DOPENSSL_IA32_SSE2' '-DOPENSSL_BN_ASM_MONT' '-DOPENSSL_BN_ASM_MONT5' '-DOPENSSL_BN_ASM_GF2m' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DRC4_ASM' '-DMD5_ASM' '-DAES_ASM' '-DVPAES_ASM' '-DBSAES_ASM' '-DGHASH_ASM' '-DECP_NISTZ256_ASM' '-DPADLOCK_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -I/usr/local/Cellar/icu4c/61.1/include -I../deps/openssl/openssl -I../deps/openssl/openssl/include -I../deps/openssl/openssl/crypto -I../deps/openssl/openssl/crypto/include -I../deps/openssl/openssl/crypto/modes -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-x86_64-cc/asm/include -I../deps/openssl/openssl/include  -Os -gdwarf-2 -mmacosx-version-min=10.7 -arch x86_64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/.deps//private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/openssl-cli/deps/openssl/openssl/apps/version.o.d.raw   -c -o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/openssl-cli/deps/openssl/openssl/apps/version.o ../deps/openssl/openssl/apps/version.c
  clang '-D_DARWIN_USE_64_BIT_INODE=1' '-DDSO_DLFCN' '-DHAVE_DLFCN_H' '-DNDEBUG' '-DOPENSSL_THREADS' '-DOPENSSL_NO_DYNAMIC_ENGINE' '-DOPENSSL_PIC' '-DOPENSSL_IA32_SSE2' '-DOPENSSL_BN_ASM_MONT' '-DOPENSSL_BN_ASM_MONT5' '-DOPENSSL_BN_ASM_GF2m' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DRC4_ASM' '-DMD5_ASM' '-DAES_ASM' '-DVPAES_ASM' '-DBSAES_ASM' '-DGHASH_ASM' '-DECP_NISTZ256_ASM' '-DPADLOCK_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -I/usr/local/Cellar/icu4c/61.1/include -I../deps/openssl/openssl -I../deps/openssl/openssl/include -I../deps/openssl/openssl/crypto -I../deps/openssl/openssl/crypto/include -I../deps/openssl/openssl/crypto/modes -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-x86_64-cc/asm/include -I../deps/openssl/openssl/include  -Os -gdwarf-2 -mmacosx-version-min=10.7 -arch x86_64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/.deps//private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/openssl-cli/deps/openssl/openssl/apps/x509.o.d.raw   -c -o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/openssl-cli/deps/openssl/openssl/apps/x509.o ../deps/openssl/openssl/apps/x509.c
  rm -f /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/libgtest.a && ./gyp-mac-tool filter-libtool libtool  -static -o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/libgtest.a /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/gtest/deps/gtest/src/gtest-death-test.o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/gtest/deps/gtest/src/gtest-filepath.o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/gtest/deps/gtest/src/gtest-port.o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/gtest/deps/gtest/src/gtest-printers.o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/gtest/deps/gtest/src/gtest-test-part.o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/gtest/deps/gtest/src/gtest-typed-test.o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/gtest/deps/gtest/src/gtest.o /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.target/gtest/deps/gtest/src/gtest_main.o
  touch /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj.host/node_protocol_generated_sources.stamp
  LD_LIBRARY_PATH=/private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/lib.host:/private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../.; mkdir -p /private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj/gen; python tools/compress_json.py "/private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj/gen/concatenated_protocol.json" "/private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj/gen/v8_inspector_protocol_json.h"
Traceback (most recent call last):
  File "tools/compress_json.py", line 6, in <module>
    import zlib
ImportError: No module named zlib
make[1]: *** [/private/tmp/node-20180620-87253-5mbg1n/node-v10.4.1/out/Release/obj/gen/v8_inspector_protocol_json.h] Error 1
make[1]: *** Waiting for unfinished jobs....
rm bd71023b80407846f81482ac7cd813c08d1af0ab.intermediate 581293202f3c1d4618ef894a7608cfa11507b77b.intermediate
make: *** [node] Error 2
  • What you expected to happen
    To have node installed.

  • Step-by-step reproduction instructions (by running brew install commands)

  • Install the macOS 10.14 (Mojave)
  • Remove all the installed formulae: brew remove --force --ignore-dependencies $(brew list)
  • Update brew : brew update
  • Ensure all is okay brew doctor
  • Install node brew install node

I tried to run xcode-select --install :

$ xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

Also, when I'm running pip:

$ pip
Traceback (most recent call last):
  File "/usr/local/bin/pip", line 11, in <module>
    load_entry_point('pip==10.0.1', 'console_scripts', 'pip')()
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 476, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2700, in load_entry_point
    return ep.load()
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2318, in load
    return self.resolve()
  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2324, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/usr/local/lib/python2.7/site-packages/pip/_internal/__init__.py", line 20, in <module>
    from pip._vendor.urllib3.exceptions import DependencyWarning
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/urllib3/__init__.py", line 8, in <module>
    from .connectionpool import (
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/urllib3/connectionpool.py", line 36, in <module>
    from .response import HTTPResponse
  File "/usr/local/lib/python2.7/site-packages/pip/_vendor/urllib3/response.py", line 3, in <module>
    import zlib
ImportError: No module named zlib
outdated

Most helpful comment

Found your solution

29176

All 8 comments

The python built by brew doesn't include zlib (even if you brew install zlib first) - so I worked around this by editing the node package to not depend on python@2 to stop brew installing it's own, and use the system default python 2 instead - which seems to have worked (at least it updated)

This error occurs with all requires python formulae which rely on zlib or zip file reading
Also, you aren't supposed to post issues occurring on 10.14 Mojave beta

Found your solution

29176

Thank you @lgladdy for your tip, do you have the update formula somewhere please?

@uyjulian I'm not supposed to open issue related to 10.14 ... so how will you know the issue and how will I know a workaround or a fix I could submit within through a PR? I really don't get the point here.
Anyway thank you for linking this issue to the #29176. I don't really like the suggested solution. The purpose of homebrew isn't to ease the packages installation?
I rather prefer to find a definitive solution than polluting my Mac with additional external packages that I would have to cleanup after the real fix.

@zedtux https://github.com/Homebrew/homebrew-core/issues/29176#issuecomment-398656987 Just run the commands and it fixed
You don't need to "cleanup after the real fix".

Oops, sorry @uyjulian I miss understood the proposed solution, my bad.

@sfdye's instructions from suggested issue #29176 by @uyjulian solved the node installation 馃帀.

Thank you all.

On another of my Macs I got the following error installing the node package :

==> Installing node
==> Downloading https://nodejs.org/dist/v10.5.0/node-v10.5.0.tar.xz
Already downloaded: /Users/guillaumehain/Library/Caches/Homebrew/node-10.5.0.tar.xz
==> ./configure --prefix=/usr/local/Cellar/node/10.5.0 --without-npm --with-intl=system-icu
Last 15 lines from /Users/guillaumehain/Library/Logs/Homebrew/node/01.configure:
2018-06-21 15:51:13 +0200

./configure
--prefix=/usr/local/Cellar/node/10.5.0
--without-npm
--with-intl=system-icu

Ignoring curb-0.9.6 because its extensions are not built.  Try: gem pristine curb --version 0.9.6
Ignoring curb-0.9.6 because its extensions are not built.  Try: gem pristine curb --version 0.9.6
ERROR: Did not find a new enough assembler, install one or build with
       --openssl-no-asm.
       Please refer to BUILDING.md

To solve this I have added the --with-openssl flag :

brew install node [email protected]

Then I got the same above issue which I fixed as described in the #29176 (comment).

Was this page helpful?
0 / 5 - 0 ratings

Related issues

dredmorbius picture dredmorbius  路  3Comments

Steffen911 picture Steffen911  路  3Comments

jyutzler picture jyutzler  路  4Comments

ghostbar picture ghostbar  路  4Comments

yuna9 picture yuna9  路  4Comments