Skip to content

binary included in @esbuild/netbsd-arm64 does not actually run on NetBSD-arm64 #4018

@limit-ordinal

Description

@limit-ordinal

Hi all.

I'm working on porting another project to NetBSD that indirectly includes esbuild as a dependency, and I'm working on an arm64 machine. I am aware of the disclaimer saying that Node isn't officially supported on NetBSD etc. etc., but I do not believe this to be a Node issue. The binary itself that's included in the @esbuild/netbsd-arm64 package doesn't run.

Current behavior:

Trying to run the binary included in @esbuild/netbsd-arm64 on a Raspberry Pi 3b+ running the NetBSD 10.0 GENERIC64 evbarm-aarch64 kernel throws the error:

-sh: Cannot execute ELF binary ./esbuild

Compiling esbuild natively on this machine produces a binary that works properly. Node packages that use esbuild work fine on NetBSD-arm64 if I replace the binary installed from npm with one that I compiled myself.

Expected behavior:

The binary in @esbuild/netbsd-arm64 should run on a NetBSD arm64 machine.

Steps to reproduce:

  • npm install @esbuild/netbsd-arm64 on a NetBSD 10.0 aarch64 machine (in my case, a Raspberry Pi 3B+)
  • cd node_modules/\@esbuild/netbsd-arm64/bin
  • ./esbuild --version

My work-around right now is to compile esbuild natively myself and manually replace the binary in node_modules with the one I compiled. This works fine, and the node packages that use esbuild all work fine as well. So, I'm able to get my setup working, but I wanted to report the issue with the binary in the npm package. I don't know how easy of a fix this is especially if it is an issue with the Go cross-compiler itself... But like I said, I wanted to bring it to your attention.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions