Exa: Binary still not self-contained. Missing GLIBC_2.14 and GLIBC_2.18

Created on 2 Oct 2017  路  8Comments  路  Source: ogham/exa

% exa-linux-x86_64

exa-linux-x86_64: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by exa-linux-x86_64)
exa-linux-x86_64: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by exa-linux-x86_64)

On Amazon Linux 2012.03, which has libc 2.12

Most helpful comment

This has been fixed for a while, I think? Can a static build now be made?

All 8 comments

Would require linking via musl, which is blocked by rust-lang/libc#684.

Yeah, unfortunately there's not a lot I can do about this at the mo.

I'm not sure that the above libc issue was the blocker on a musl build. I went to try a musl build using an older 0.2.30 version of libc (which doesn't have the fix for 684) and it seemed to build just fine.

So the good news is that fully static builds with musl are now possible!

/tmp/exa: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, not stripped

My version here was built from the latest master branch at the time of this writing.

This has been fixed for a while, I think? Can a static build now be made?

I'm also interested in this. I can submit a PR for this if people are interested so that this is built and deployed to the GitHub releases from Travis.

I've cross compiled exa from source on my mac for the x86_64-musl-linux target and tested that this works. I've attached the binary in a tar file here if anyone is interested: exa-x86_64-unknown-linux-musl.tar.gz

These are the steps I followed:

$ git clone [email protected]:ogham/exa.git
$ git checkout v0.9.0
$ brew install filosottile/musl-cross/musl-cross
$ mkdir .cargo
$ echo "[target.x86_64-unknown-linux-musl]
linker = \"x86_64-linux-musl-gcc\"" > .cargo/config
$ cargo build --target=x86_64-unknown-linux-musl --release --no-default-features --features "default"
$ cd target/x86_64-unknown-linux-musl/release
$ tar -cvf exa-x86_64-unknown-linux-musl.tar.gz exa

Screenshot:

Screen Shot 2019-08-22 at 3 37 30 PM

I met the same issue

I followed the steps shared by @kdheepak in order to compile against musl lib on Ubuntu 18.04.4. Here's the step variant:

git clone [email protected]:ogham/exa.git
cd exa
git checkout v0.9.0
sudo apt-get install musl-tools
cargo build --target=x86_64-unknown-linux-musl --release --no-default-features --features "default"
cd target/x86_64-unknown-linux-musl/release
tar -cvf exa-x86_64-unknown-linux-musl-0.9.0.tar.gz exa
Was this page helpful?
0 / 5 - 0 ratings