rust-analyzer icon indicating copy to clipboard operation
rust-analyzer copied to clipboard

Cannot Install: Docker Alpine Arm

Open JoshuaBrest opened this issue 1 year ago • 9 comments

There doesn't seem to be any builds of alpine with arm. Is there a reason?

### Tasks
- [ ] Make a PR to add alpine arm64 to the build system

JoshuaBrest avatar Jun 07 '23 18:06 JoshuaBrest

Yes, they wouldn't support proc macros.

lnicola avatar Jun 07 '23 18:06 lnicola

Yes, they wouldn't support proc macros.

why is that? I have a docker and it's hard to code without intellisence.

JoshuaBrest avatar Jun 07 '23 18:06 JoshuaBrest

If I recall correctly, the musl loader doesn't support dlopen (loading shared libraries, which proc macros are) for static binaries. I might be wrong, but I think Alpine is using static linking.

lnicola avatar Jun 07 '23 18:06 lnicola

If I recall correctly, the musl loader doesn't support dlopen (loading shared libraries, which proc macros are) for static binaries. I might be wrong, but I think Alpine is using static linking.

Isn't dlopen the only reason musl loader exists?

https://www.musl-libc.org/intro.html:

Dynamic linking is also efficient; by integrating the entire standard library implementation, including threads, math, and even the dynamic linker itself into a single shared object, most of the startup time and memory overhead of dynamic linking have been eliminated.

JoshuaBrest avatar Jun 07 '23 18:06 JoshuaBrest

My bad, I thought Alpine only supported static linking. The binary in the VSIX was actually tested on Arch Linux, not Alpine. I managed to run the rust-analyzer-x86_64-unknown-linux-musl server on Alpine after installing libgcc.

Then somebody just needs to do the work of setting up a build for it on CI.

lnicola avatar Jun 07 '23 18:06 lnicola

Hate to spam but has this been resolved?

JoshuaBrest avatar Aug 07 '23 22:08 JoshuaBrest

@JoshuaBrest Do you agree on my following findings on aarch64 Alpine Linux:

  • Installing the rust-analyzer toolchain component works.
  • Installing the Visual Studio Code extension doesn't, since no release artifact for this target was published.

I don't know how the GitHub releases and Visual Studio Code Marketplace listings are connected, that's why I'm asking for verification.

sanmai-NL avatar Jan 29 '24 15:01 sanmai-NL

@JoshuaBrest

Do you agree on my following findings on aarch64 Alpine Linux:

  • Installing the rust-analyzer toolchain component works.

  • Installing the Visual Studio Code extension doesn't, since no release artifact for this target was published.

I don't know how the GitHub releases and Visual Studio Code Marketplace listings are connected, that's why I'm asking for verification.

I believe that's how it was when I last used docker with Alpine . I can't say for now because I haven't used it recently.

JoshuaBrest avatar Jan 29 '24 15:01 JoshuaBrest

It's still the case.

sanmai-NL avatar Jan 29 '24 20:01 sanmai-NL