Skip to content

Conversation

@richardlau
Copy link
Member

Node.js 16 has raised the minimum version of some of the build toolchain (Python 3.6+ is now required and gcc/g++ 8) and the existing recipe for armv6l fails to build Node.js 16 as it doesn't have a new enough version of Python: https://unofficial-builds.nodejs.org/logs/202104220522-v16.0.0/armv6l.log

Moved the existing recipe to armv6l-old and added a should-build.sh script to stop it running on Node.js 16 and later. Add a new armv6l recipe, based on the existing arm6vl recipe, but using Ubuntu 18.04 and gcc/g++ 8 to match what we're using for the official armv7l builds.

@rvagg
Copy link
Member

rvagg commented May 3, 2021

I think old is going to become a problem into the future and we should be more specific. I think something like pre16 (or something along those lines) would be a better differentiator and will scale as we have to do more of this.
Otherwise this LGTM I think, it'd be good to test it out on old and new once merged to verify.

richardlau added 2 commits May 3, 2021 13:46
In preparation for a new recipe to build armv6l binaries for Node.js 16 and later, rename the existing recipe and add a should-build.sh script to stop it running for Node.js 16 and later.
Based on the existing arm6vl recipe, but using Ubuntu 18.04 and gcc/g++ 8 to match what we're using for the official armv7l builds.
@richardlau
Copy link
Member Author

Renamed the "old" recipe to armv6l-pre16.

Copy link
Member

@rvagg rvagg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

give it a go I suppose

@richardlau richardlau merged commit 0d49da5 into nodejs:master May 4, 2021
@richardlau
Copy link
Member Author

I queued v15.10.0-rc.0 as a pre-16 build and it's currently running: https://unofficial-builds.nodejs.org/logs/202105041004-v15.10.0-rc.0/
There should be a new 16 release later today (nodejs/node#38522).

@richardlau richardlau mentioned this pull request May 4, 2021
@richardlau
Copy link
Member Author

Oops, missed that build.sh has a list of recipes to build that needs to be updated: #34

@richardlau
Copy link
Member Author

16.1.0 build on the new recipe failed due to a missing package -- added the fix to #34:
https://unofficial-builds.nodejs.org/logs/202105041543-v16.1.0/armv6l.log

python3 ./configure \	--prefix=/ \	--dest-cpu=arm \	--tag= \	--release-urlbase=https://unofficial-builds.nodejs.org/download/release/ \ --download=all --with-intl=full-icu Traceback (most recent call last): File "./configure", line 18, in <module> from distutils.spawn import find_executable ModuleNotFoundError: No module named 'distutils.spawn' 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants