nodenv / node-build

Install NodeJS versions
MIT License
271 stars 80 forks source link

`nodenv install` tries to use python and fails on MacOS Monterey 12.3 and later and fails #764

Open debo opened 2 years ago

debo commented 2 years ago

I posted this issue in the nodenv project but I think it's more related to node-build actually. The issue happens also with the nighty build so it's not related to the node version.

Any help, insight or suggestion on how to debug the problem is very welcome.

BelfordZ commented 2 years ago

DJ Khaled yells:

Another one

nodenv install 14.15.1
Downloading node-v14.15.1.tar.gz...
-> https://nodejs.org/dist/v14.15.1/node-v14.15.1.tar.gz

WARNING: node-v14.15.1 is in LTS Maintenance mode and nearing its end of life.
It only receives *critical* security updates, *critical* bug fixes and documentation updates.

Installing node-v14.15.1...

BUILD FAILED (OS X 12.4 using node-build 4.9.84)

Inspect or clean up the working tree at /var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629172705.52432.YaFeGr
Results logged to /var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629172705.52432.log

Last 10 log lines:
/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629172705.52432.YaFeGr/node-v14.15.1 /var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629172705.52432.YaFeGr ~/code/metamask/metamask-extension
pyenv: python2.7: command not found

The `python2.7' command exists in these Python versions:
  2.7.18

Note: See 'pyenv help global' for tips on allowing both
      python2 and python3 to be found.
Missing or stale config.gypi, please run ./configure
make: *** [config.gypi] Error 1

Switching to python 2.7 and retry

pyenv global 2.7.18 && pyenv rehash

nodenv install 14.15.1
Downloading node-v14.15.1.tar.gz...
-> https://nodejs.org/dist/v14.15.1/node-v14.15.1.tar.gz

WARNING: node-v14.15.1 is in LTS Maintenance mode and nearing its end of life.
It only receives *critical* security updates, *critical* bug fixes and documentation updates.

Installing node-v14.15.1...

BUILD FAILED (OS X 12.4 using node-build 4.9.84)

Inspect or clean up the working tree at /var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K
Results logged to /var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.log

Last 10 log lines:
  clang -o /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_cert.o ../deps/openssl/openssl/ssl/ssl_cert.c '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_HW' '-DNDEBUG' '-DL_ENDIAN' '-DOPENSSL_PIC' '-DOPENSSL_CPUID_OBJ' '-DOPENSSL_BN_ASM_MONT' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DKECCAK1600_ASM' '-DVPAES_ASM' '-DECP_NISTZ256_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -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/openssl/crypto/ec/curve448 -I../deps/openssl/openssl/crypto/ec/curve448/arch_32 -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2 -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/include -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto/include/internal  -O3 -gdwarf-2 -mmacosx-version-min=10.13 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/.deps//private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_cert.o.d.raw -I/Users/zb/.nodenv/versions/14.15.1/include   -c
  clang -o /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_ciph.o ../deps/openssl/openssl/ssl/ssl_ciph.c '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_HW' '-DNDEBUG' '-DL_ENDIAN' '-DOPENSSL_PIC' '-DOPENSSL_CPUID_OBJ' '-DOPENSSL_BN_ASM_MONT' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DKECCAK1600_ASM' '-DVPAES_ASM' '-DECP_NISTZ256_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -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/openssl/crypto/ec/curve448 -I../deps/openssl/openssl/crypto/ec/curve448/arch_32 -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2 -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/include -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto/include/internal  -O3 -gdwarf-2 -mmacosx-version-min=10.13 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/.deps//private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_ciph.o.d.raw -I/Users/zb/.nodenv/versions/14.15.1/include   -c
  clang -o /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_conf.o ../deps/openssl/openssl/ssl/ssl_conf.c '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_HW' '-DNDEBUG' '-DL_ENDIAN' '-DOPENSSL_PIC' '-DOPENSSL_CPUID_OBJ' '-DOPENSSL_BN_ASM_MONT' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DKECCAK1600_ASM' '-DVPAES_ASM' '-DECP_NISTZ256_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -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/openssl/crypto/ec/curve448 -I../deps/openssl/openssl/crypto/ec/curve448/arch_32 -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2 -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/include -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto/include/internal  -O3 -gdwarf-2 -mmacosx-version-min=10.13 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/.deps//private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_conf.o.d.raw -I/Users/zb/.nodenv/versions/14.15.1/include   -c
  clang -o /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_err.o ../deps/openssl/openssl/ssl/ssl_err.c '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_HW' '-DNDEBUG' '-DL_ENDIAN' '-DOPENSSL_PIC' '-DOPENSSL_CPUID_OBJ' '-DOPENSSL_BN_ASM_MONT' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DKECCAK1600_ASM' '-DVPAES_ASM' '-DECP_NISTZ256_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -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/openssl/crypto/ec/curve448 -I../deps/openssl/openssl/crypto/ec/curve448/arch_32 -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2 -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/include -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto/include/internal  -O3 -gdwarf-2 -mmacosx-version-min=10.13 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/.deps//private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_err.o.d.raw -I/Users/zb/.nodenv/versions/14.15.1/include   -c
  clang -o /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_init.o ../deps/openssl/openssl/ssl/ssl_init.c '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_HW' '-DNDEBUG' '-DL_ENDIAN' '-DOPENSSL_PIC' '-DOPENSSL_CPUID_OBJ' '-DOPENSSL_BN_ASM_MONT' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DKECCAK1600_ASM' '-DVPAES_ASM' '-DECP_NISTZ256_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -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/openssl/crypto/ec/curve448 -I../deps/openssl/openssl/crypto/ec/curve448/arch_32 -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2 -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/include -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto/include/internal  -O3 -gdwarf-2 -mmacosx-version-min=10.13 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/.deps//private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_init.o.d.raw -I/Users/zb/.nodenv/versions/14.15.1/include   -c
  clang -o /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_lib.o ../deps/openssl/openssl/ssl/ssl_lib.c '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_HW' '-DNDEBUG' '-DL_ENDIAN' '-DOPENSSL_PIC' '-DOPENSSL_CPUID_OBJ' '-DOPENSSL_BN_ASM_MONT' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DKECCAK1600_ASM' '-DVPAES_ASM' '-DECP_NISTZ256_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -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/openssl/crypto/ec/curve448 -I../deps/openssl/openssl/crypto/ec/curve448/arch_32 -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2 -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/include -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto/include/internal  -O3 -gdwarf-2 -mmacosx-version-min=10.13 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/.deps//private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_lib.o.d.raw -I/Users/zb/.nodenv/versions/14.15.1/include   -c
make[1]: *** No rule to make target `/private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_quic.o', needed by `/private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/libopenssl.a'.  Stop.
make[1]: *** Waiting for unfinished jobs....
  clang -o /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_mcnf.o ../deps/openssl/openssl/ssl/ssl_mcnf.c '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_HW' '-DNDEBUG' '-DL_ENDIAN' '-DOPENSSL_PIC' '-DOPENSSL_CPUID_OBJ' '-DOPENSSL_BN_ASM_MONT' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DKECCAK1600_ASM' '-DVPAES_ASM' '-DECP_NISTZ256_ASM' '-DPOLY1305_ASM' '-DOPENSSLDIR="/System/Library/OpenSSL/"' '-DENGINESDIR="/dev/null"' -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/openssl/crypto/ec/curve448 -I../deps/openssl/openssl/crypto/ec/curve448/arch_32 -I../deps/openssl/config -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2 -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/include -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto -I../deps/openssl/config/archs/darwin64-arm64-cc/asm_avx2/crypto/include/internal  -O3 -gdwarf-2 -mmacosx-version-min=10.13 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -Wno-missing-field-initializers -fno-strict-aliasing -MMD -MF /private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/.deps//private/var/folders/xk/6s3xqd197019q_jv2g3bzzs00000gn/T/node-build.20220629174158.62903.SZai2K/node-v14.15.1/out/Release/obj.target/openssl/deps/openssl/openssl/ssl/ssl_mcnf.o.d.raw -I/Users/zb/.nodenv/versions/14.15.1/include   -c
make: *** [node] Error 2

Running on OSX 12.4 via apple silicon M1

nodonut commented 2 years ago

Any update on this? I'm running into the same issue

masonmark commented 11 months ago

It fails on macOS Sonoma too.

I then used homebrew to install python, but then I got Please use python3.10 or python3.9 or python3.8 or python3.7 or python3.6 or python3.5 or python2.7.

The workaround was to

brew install python@3.10

ln -s /opt/homebrew/bin/python3.10 /opt/homebrew/bin/python

(This is for macOS Sonoma with Homebrew already installed, YMMV...) I suspect the error is coming from the ancient Node build environment, though. I only encountered it when I tried to build Node 14 to test some legacy app. I don't normally see the problem when building Node 18 or 20.