yao-pkg / pkg-binaries Goto Github PK
View Code? Open in Web Editor NEWCollection of pkg nodejs binaries that are not supported by pkg
License: MIT License
Collection of pkg nodejs binaries that are not supported by pkg
License: MIT License
Can we have a binary for node JS 21
Need for linux i.e.
node21-linux-x64
Hello, could you build the binary file for android x86?
Would it be possible to also build binaries for Node.js v12.18.1 for armv6, armv7, and armv8?
powerpc 64 bit alpine node.js 12.18.1
fetched-v12.18.1-alpine-ppc64.zip
Can you please explain the co-relation between the version number in fetched-vx.y.z
and Node versions? The documentation has an example for arm64
, node v8.11.3
on linux
where, the binary being downloaded is fetched-v14.0.0-linux-armv6
. It is then renamed to fetched-v8.11.3-linux-arm64
.
How do we know that v14.0.0
of the pre-built binary maps to v8.11.3
NodeJS version? Specifically, in my case, my NodeJS version is 10.21.0
and I need the pre-built binary for armv6
. Can I therefore, download v14.4.0
and rename it to v10.21.0
NodeJS version?
I get a segmentation fault trying the pre-built v12.16.1 on a raspberry pi zero.
Version v12.13.1-linux-armv6 gives an invalid instruction error.
Version v8.16.0-linux-armv6 works.
Would also be nice to have those over here as pkg-fetch repository is only infrequently maintained.
macos and win binaries must be built without docker buildx as there is no way to emulate that. Fortunately, GitHub actions does have support for both macos and win. Because of that the build should also not take that long and require a custom builder.
This issue is used to trigger actions to build pkg binaries using github actions.
Usage: <arch> <nodeVersion> <os>
arch
: arm32v6 | arm32v7 | arm64node
: nodeos
: linux | alpineI downloaded the binaries using curl into ~/.pkg-cache/custom.
Then set the environment variables as mentioned in the README.
I am using the latest version of @yako-pkg/pkg. (v5.11.5).
Within my project folder I have a single index.js file. When I run the command:
npx pkg -t node16-linux-armv7 index.js
I get the following output:
> [email protected]
> Fetching base Node.js binaries to PKG_CACHE_PATH
fetched-v16.20.2-linux-armv7 [ ] 0%
> Error! 404: Not Found
> Not found in remote cache:
{"tag":"v3.5","name":"node-v16.20.2-linux-armv7"}
> Building base binary from source:
built-v16.20.2-linux-armv7
> Fetching Node.js source archive from nodejs.org...
node-v16.20.2.tar.gz.sha256sum [====================] 100%
node-v16.20.2.tar.gz [= ] 7%^
It doesn't recognize the built-v16.16.0-linux-armv7
binary within ~/.pkg-cache/custom and tries to build from source.
I have both @yao-pkg/pkg and my project folders within WSL2 in my Windows machine with a x86 architecture. I need to cross compile into armv7 within this environment. Any help would be appreciated.
Using pkg 5.3.1 which uses pkg-fetch 3.2.2, downloaded binary for arm6, moved it into the cache folder but pkg still tries to build from source.
root@1611399:/usr/src# ls -al ~/.pkg-cache/v3.2/
total 92800
drwxr-xr-x 2 root root 4096 Aug 24 14:56 .
drwxr-xr-x 3 root root 4096 Aug 24 14:51 ..
-rwxr-xr-x 1 root root 28755972 Aug 24 14:56 fetched-v12.22.2-linuxstatic-armv7
-rwxr-xr-x 1 root root 66259348 Aug 24 14:52 fetched-v14.0.0-linux-armv6
https://nodejs.org/en/blog/vulnerability/september-2020-security-releases/
I am currently creating a patch
# ๎ฐ ./build.sh
1) arm32v6
2) arm32v7
3) arm64
Architecture: >2
1) Node 8 LTS (Carbon)
2) Node 10 LTS (Dubnium)
3) Node 12 LTS (Current)
NodeJS version: >3
1) linux
2) alpine
OS version: >1
unknown flag: --progress
# after removing --progress parameter in build.sh:159, this was the output
unknown shorthand flag: 'f' in -f
# after removing even -f in build.sh:159, this was the output
unknown flag: --platform
basically my docker is completely unsure about this command:
docker buildx build --progress plain -f Dockerfile.build \
--platform $platform \
--build-arg PKG_NODE="$pkg_node" \
--build-arg PKG_OS="$pkg_os" \
--build-arg PKG_ARCH="$pkg_arch" \
--build-arg NPROC="$NPROC" \
--load \
-t ${arch}/pkgbinaries:${pkg_os}-${pkg_node} .
I like your repo because I saw the arm7 for the Linux node16, but when I look at the releases the said binary does not exist and your build workflow is also failing, maybe that's why. Is there a chance we can fix that and able to produce the right binary?
#9 introduced using all the cores available for compiling. It might be possible that that is sufficient for compiling below 6 hours which would make it runnable n GitHub action runners.
Specs:
https://docs.github.com/en/actions/reference/virtual-environments-for-github-hosted-runners#supported-runners-and-hardware-resources
Limitations:
https://docs.github.com/en/actions/getting-started-with-github-actions/about-github-actions#:~:text=Usage%20limits,-There%20are%20some&text=Job%20execution%20time%20%2D%20Each%20job,apply%20to%20self%2Dhosted%20runners.
I'm trying to cross compile from x64 to arm64 a simple hello world:
~/test$ cat hello.js
console.log('hello');
but I have the following error:
~/test$ pkg -t node8-linux-arm64 hello.js
[email protected]
Warning Failed to make bytecode node8-arm64 for file /snapshot/test/hello.js
the resulting binary not start on arm64 board.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.