Skip to content
This repository has been archived by the owner on Dec 1, 2024. It is now read-only.

create prebuilts for alpine linux? #388

Closed
ralphtheninja opened this issue Sep 13, 2017 · 4 comments
Closed

create prebuilts for alpine linux? #388

ralphtheninja opened this issue Sep 13, 2017 · 4 comments
Labels
enhancement New feature or request semver-minor New features that are backward compatible

Comments

@ralphtheninja
Copy link
Member

ralphtheninja commented Sep 13, 2017

Alpine linux seems to be very commonly used in the docker world. For this reason it would be really nice to have prebuilt binaries for that particular environment. I'm guessing right now prebuild-install picks the wrong binaries with a segfault as a result.

See Level/levelup#484 for some background

@ralphtheninja
Copy link
Member Author

Workaround for alpine linux users at the moment is to use --build-from-source when installing e.g. level (or leveldown directly)

@dcharbonnier
Copy link

I don't think it's possible with yarn @ralphtheninja

@vweevers
Copy link
Member

vweevers commented Dec 26, 2018

Some context:

As Alpine Linux uses musl, you may run into some issues with environments expecting glibc-like behavior – especially if you try to use binaries compiled with glibc. You should recompile these binaries to use musl (compiling on Alpine is probably the easiest way to do this).
-- (source) (mhart/alpine-node#107)

A possible solution is to:

  1. Compile prebuilds in an alpine Docker container
  2. Add a '-musl' suffix to prebuild names
  3. Use https://github.com/lovell/detect-libc at npm install time (to force compile if no matching prebuild is found) and run time (to select the right prebuild). WIP at Add detection for non-glibc libc on Linux prebuild/node-gyp-build#9

@vweevers vweevers added the enhancement New feature or request label Dec 31, 2018
@vweevers vweevers added the semver-minor New features that are backward compatible label Mar 31, 2019
@vweevers
Copy link
Member

vweevers commented Apr 27, 2019

Tasks:

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request semver-minor New features that are backward compatible
Projects
None yet
Development

No branches or pull requests

3 participants