Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Supported "linux-arm" not detected correctly (Error: Your current platform "linux" and architecture "arm" combination is not yet supported by the native Rollup build) #5449

Closed
JayFoxRox opened this issue Mar 29, 2024 · 2 comments

Comments

@JayFoxRox
Copy link

JayFoxRox commented Mar 29, 2024

Rollup Version

4.13.2

Operating System (or Browser)

Docker 24.0.7: "node:21-alpine" on Linux armv7l

Node Version (if applicable)

v20.12.0/v21.7.1

Link To Reproduction

(Unable to provide reproduction, due to specific OS/architecture requirement and no code being necessary)

Expected Behaviour

I have a raspberry pi 4 running: Linux <...> 6.6.13-2-rpi #1 SMP Tue Jan 23 13:52:31 MST 2024 armv7l GNU/Linux (note armv7, not aarch64).
On it, I run Docker version 24.0.7, build afdd53b4e3.

I have a custom dockerfile to build my vite (vite 5.2.7) / TS project which does this:

RUN npm ci --legacy-peer-deps
RUN npm run build # in package.json: "build": "tsc && vite build",

I expect the build to work.

Actual Behaviour

The npm run build runs into this problem:

 > [ui  6/10] RUN npm run build:
2.147
2.147 > vite-project@0.0.0 build
2.147 > tsc && vite build
2.147
25.94 /app/frontend/node_modules/rollup/dist/native.js:40
25.94 	throw new Error(
25.94 	      ^
25.94
25.94 Error: Your current platform "linux" and architecture "arm" combination is not yet supported by the native Rollup build. Please use the WASM build "@rollup/wasm-node" instead.
25.94
25.94 The following platform-architecture combinations are supported:
25.94 android-arm
25.94 android-arm64
25.94 darwin-arm64
25.94 darwin-x64
25.94 linux-arm
25.94 linux-arm64
25.94 linux-arm64 (musl)
25.94 linux-ppc64le
25.94 linux-riscv64
25.94 linux-s390x
25.94 linux-x64
25.94 linux-x64 (musl)
25.94 win32-arm64
25.94 win32-ia32
25.94 win32-x64
25.94
25.94 If this is important to you, please consider supporting Rollup to make a native build for your platform and architecture available.
25.94     at Object.<anonymous> (/app/frontend/node_modules/rollup/dist/native.js:40:8)
25.94     at Module._compile (node:internal/modules/cjs/loader:1368:14)
25.94     at Module._extensions..js (node:internal/modules/cjs/loader:1426:10)
25.94     at Module.load (node:internal/modules/cjs/loader:1205:32)
25.94     at Module._load (node:internal/modules/cjs/loader:1021:12)
25.94     at cjsLoader (node:internal/modules/esm/translators:366:17)
25.94     at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:315:7)
25.94     at ModuleJob.run (node:internal/modules/esm/module_job:222:25)
25.94     at async ModuleLoader.import (node:internal/modules/esm/loader:323:24)
25.94
25.94 Node.js v21.7.1

I've also repeated this with Docker base image node:21-alpine (Node.js v20.12.0), and it ran into the same issue.


I've also checked the code and nothing obvious sticks out as to why it doesn't use (or detect) the suggested linux-arm which is here:

arm: { base: 'linux-arm-gnueabihf', musl: null },

I had previously also tried to use yarn 1.x instead of npm and the same issue occured.


Please let me know if this is a vite or rollup bug, and how I can assist in debugging this problem.
I'll probably try to use @rollup/wasm-node for now, but it's not ideal and shouldn't be necessary.

@sapphi-red
Copy link
Contributor

This is a duplicate of #5449.
The error happens because you're running on alpine that requires musl build. (The one it's null in that quoted code)

@JayFoxRox
Copy link
Author

Thanks for the explanation.
I believe you meant to link #5194? I saw that issue but the error message was a different one.

Regardless of the underlying issue, I think the wording of the error message should be improved to include information about the libc if it's relevant.


Anyhow, I'll be switching to another debian base image instead of alpine anyway.

I'll close this issue.

Feel free to reopen / rename if you want to keep this as a reminder about the error message (which makes no mention of musl / glibc / ..)

@JayFoxRox JayFoxRox closed this as not planned Won't fix, can't repro, duplicate, stale Mar 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants