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

version `GLIBC_2.32' not found (required by dog) #28

Open
cb3inco opened this issue Nov 12, 2020 · 16 comments
Open

version `GLIBC_2.32' not found (required by dog) #28

cb3inco opened this issue Nov 12, 2020 · 16 comments

Comments

@cb3inco
Copy link

cb3inco commented Nov 12, 2020

If dog does something unexpected, or displays an error on the screen, or if it outright crashes, then please include the following information in your report:

  • The version of dog being used (dog --version) - v.0.1.0
  • The command-line arguments you are using - dog
  • Your operating system and hardware platform - Intel CPU, Ubuntu 20.04 (Pop_OS!)

If it’s a crash, please include the full text of the crash that gets printed to the screen. If you’re seeing unexpected behaviour, a screenshot of the issue will help a lot.

Placed the binary in /usr/local/bin and try to run dog or dog --version results in the following error:

user@laptop:~$ dog
dog: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by dog) user@laptop:~$ dog --version dog: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by dog)

It appears that 20.04 LTS has 2.31 by default, where 20.10 has the 2.32. Is it not possible to run on Ubuntu without manually installing the newer packages?

@rmrf
Copy link

rmrf commented Nov 13, 2020

same

dog: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by dog)

@avoidik
Copy link

avoidik commented Nov 13, 2020

Ubuntu 20.04 (Focal) has libc6 of version 2.31 by default, however dog which is available here was compiled against libc6 of version 2.32, and this version of libc6 will be available only in Ubuntu 20.10 (Groovy). It might be much easier to recompile it yourself for 20.04. Or you can take mine.

dog.zip

@azlux
Copy link

azlux commented Nov 19, 2020

It's the same on Debian.

Azlux@testdevice:~/bin$ sudo apt list libc6
Listing... Done
libc6/stable,now 2.28-10 amd64 [installed]

Azlux@testdevice:~/bin$ ./dog
./dog: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./dog)

Azlux@testdevice:~/bin$

Is that possible to be glibc independent or to use a lower version for public release ?

@JeGr
Copy link

JeGr commented Nov 20, 2020

Seconded. Having a multitude of debian and ubuntu systems that still are actively supported (e.g. 16.04, 18.04 as LTS versions), using a library version that not even the current LTS can natively run is not a good idea.

Perhaps consider lowering the dependencies or building a statically linked version for linux x64 as servers never tend to run "in-between" or bleeding edge versions of OS'es ;)

@jc00ke
Copy link

jc00ke commented Nov 20, 2020

What about a musl build?

@linuxgemini
Copy link

I have a sidetrack mirror CI project where I've done a musl build, the pipeline is available on https://gitlab.com/mirrorbuilds/dog/-/pipelines

The CI config is also available on https://gitlab.com/mirrorbuilds/ci-configs/-/blob/master/dog/.gitlab-ci.yml

cc @jc00ke

@patsevanton
Copy link

Same issue

@azlux
Copy link

azlux commented Dec 1, 2020

Ok, I've compiled myself and add everything into https://packages.azlux.fr/
It's an apt repository based on github release. Since the release don't have runnable binary, I've disabled the auto-update (I will do manually until @ogham fix the current issue, and maybe add arm build too (#33))

The build script is on the website. Autocompletion and manual are also installed automatically.

@azlux
Copy link

azlux commented Mar 9, 2021

No news about this issue ?

@ogham
Copy link
Owner

ogham commented Mar 31, 2021

This error is a side-effect of me building on one version of Linux, only testing on that same version of Linux, then (incorrectly!) assuming that it would work for slightly older versions too. This happened to me once before when exa accidentally required a library that I happened to have on my own machine — I didn't notice, but everyone else did!

I'll do my best to support more versions and architectures in the next release.

@patsevanton
Copy link

May be build dog on old version glibc? Where build dog now?

@auktis
Copy link

auktis commented Aug 5, 2021

Everyone who is on Debian based distribution, you can adapt the Dockerfile found on master branch to build the executable from source and then copy in on your system.
For instance :

FROM rust

WORKDIR /build
COPY /src /build/src
COPY /dns /build/dns
COPY /dns-transport /build/dns-transport
COPY /man /build/man
COPY build.rs Cargo.toml /build/

RUN cargo build --release

Then:

docker build -t dog .
docker run --rm -it -d --name dog dog:latest
docker cp dog:/build/target/release/dog ./
docker stop dog

Using rust:latest image, the produced executable works on Ubuntu 20.04, but you can take an older image like rust:stretch if it is not the case for you.

@cdemoulins
Copy link

You can also compile a static binary using musl libc. You just need to add the openssl dependency with the vendored features mentioned in the documentation.

I added to the root Cargo.toml the dependency :
openssl = { version = "0.10", features = ["vendored"] }

And compiled using musl target :
cargo build --target x86_64-unknown-linux-musl --release

@thomasmerz
Copy link

Same here with latest openSUSE 15.3:

./dog: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by ./dog)

Latest glibc on latest openSUSE 15.3 is "only" 2.31… 😞

@ayanamist
Copy link

Ok, I've compiled myself and add everything into https://packages.azlux.fr/ It's an apt repository based on github release. Since the release don't have runnable binary, I've disabled the auto-update (I will do manually until @ogham fix the current issue, and maybe add arm build too (#33))

The build script is on the website. Autocompletion and manual are also installed automatically.

The direct link to download is https://packages.azlux.fr/debian/pool/main/d/dog/

@thomasmerz
Copy link

@ayanamist , hm, no RPMs overthere… I'm currently fine with the docker-solution 👍🏻

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