build: use bin path override if no python is found in PATH#16241
build: use bin path override if no python is found in PATH#16241bradleythughes wants to merge 1 commit intonodejs:masterfrom
Conversation
|
This happens with the recently released v8.7.0 as well, so if it's possible to land this on v8.x, I'd be very appreciative. :) |
|
Wow, never occurred to me that there were systems/configurations without a cc/ @forivall @addaleax @bengl @bnoordhuis @nodejs/python , PTAL |
|
I am sorry, but not sure I understand - |
|
I'm guessing that it means systems where there's a |
|
That's correct. There is |
|
thanks @forivall and @bradleythughes. Can you also please have a look at #16058 and #14737 and see that this is supplementing / complimenting to those? I am also trying to relate these. |
|
@gireeshpunathil Yes, I found both of those PRs when I hit the configure error shown above with the v8.7.0 release. This PR addresses a specific situation not covered by the other two, so yes, I would say this PR is both complimentary and supplementary. 🙂 |
thefourtheye
left a comment
There was a problem hiding this comment.
LGTM with @bnoordhuis's comment.
On systems with no "python" in the PATH, e.g. FreeBSD, we should always
create a python symlink in get_bin_override(). Otherwise, configure
fails with the following error:
Traceback (most recent call last):
File "./configure", line 1461, in <module>
bin_override = get_bin_override()
File "./configure", line 1360, in get_bin_override
if os.path.realpath(which('python')) == os.path.realpath(sys.executable):
File "/usr/local/lib/python2.7/posixpath.py", line 375, in realpath
path, ok = _joinrealpath('', filename, {})
File "/usr/local/lib/python2.7/posixpath.py", line 381, in _joinrealpath
if isabs(rest):
File "/usr/local/lib/python2.7/posixpath.py", line 54, in isabs
return s.startswith('/')
AttributeError: 'NoneType' object has no attribute 'startswith'
b165063 to
0f1872c
Compare
|
More CI failures than I can comprehend, running it once again: |
|
Landed in 02a5267 Thanks! |
On systems with no "python" in the PATH, e.g. FreeBSD, we should always create a python symlink in get_bin_override(). PR-URL: #16241 Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
On systems with no "python" in the PATH, e.g. FreeBSD, we should always create a python symlink in get_bin_override(). PR-URL: #16241 Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
On systems with no "python" in the PATH, e.g. FreeBSD, we should always create a python symlink in get_bin_override(). PR-URL: nodejs/node#16241 Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
|
can we get a backport to v6.x? |
|
Backporting now. |
On systems with no "python" in the PATH, e.g. FreeBSD, we should always create a python symlink in get_bin_override(). PR-URL: #16241 Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
On systems with no "python" in the PATH, e.g. FreeBSD, we should always create a python symlink in get_bin_override(). PR-URL: #16241 Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
On systems with no "python" in the PATH, e.g. FreeBSD, we should always create a python symlink in get_bin_override(). PR-URL: #16241 Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
On systems with no "python" in the PATH, e.g. FreeBSD, we should always create a python symlink in get_bin_override(). PR-URL: nodejs/node#16241 Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
On systems with no "python" in the PATH, e.g. when building with poudriere on FreeBSD, we should always create a python symlink in get_bin_override(). Otherwise, configure fails with the following error:
Checklist
make -j4 test(UNIX), orvcbuild test(Windows) passesAffected core subsystem(s)
build