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

Provide Statically Compiled Binaries for (aarch64|arm64) Linux #217

Closed
Azathothas opened this issue Feb 20, 2024 · 1 comment
Closed

Provide Statically Compiled Binaries for (aarch64|arm64) Linux #217

Azathothas opened this issue Feb 20, 2024 · 1 comment

Comments

@Azathothas
Copy link

Hi, the current releases for arm64 Linux is based on gnu and not musl.
As a result, the binary is dynamically linked:

$ https://github.com/sharkdp/hexyl/releases/download/v0.14.0/hexyl-v0.14.0-aarch64-unknown-linux-gnu.tar.gz

$ file hexyl && ldd hexyl
hexyl: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, BuildID[sha1]=ae7ee4105a895435fc22524bd4291da60449ca0c, with debug_info, not stripped
        linux-vdso.so.1 (0x0000ffffa4ffc000)
        libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffffa4ec0000)
        libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffffa4ea0000)
        libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffffa4cf0000)
        /lib/ld-linux-aarch64.so.1 (0x0000ffffa4fc3000)

$ du -sh hexyl
2.9M    hexyl

Adding target: aarch64-unknown-linux-musl in https://github.com/sharkdp/hexyl/blob/master/.github/workflows/CICD.yml should work.

However, you can release an even more optimized & smaller binary , based on : https://github.com/Azathothas/Toolpacks/blob/main/.github/scripts/aarch64_Linux/bins/hexyl.sh

$ file "./target/$RUST_TARGET/release/hexyl"
./target/aarch64-unknown-linux-musl/release/hexyl: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), statically linked, stripped

$ du -sh "./target/$RUST_TARGET/release/hexyl"
800K    ./target/aarch64-unknown-linux-musl/release/hexyl
@sharkdp
Copy link
Owner

sharkdp commented Jun 22, 2024

I'd rather not pull in external dependencies / scripts just for building binaries. But if someone wants to add that target in CICD.yml, please go ahead.

@sharkdp sharkdp closed this as completed Sep 8, 2024
@sharkdp sharkdp reopened this Sep 8, 2024
@sharkdp sharkdp closed this as completed Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants