Reputation: 765
firstly, I google'd a lot but nothing I found related to my case, I have an ELF executable file I'm trying to run it in my Ubuntu WSL, I've changed the permissions (chmod +x file
), when I run it, this error shows up
/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by myFile)
and when I use ld command this shows up to me
myFile(.eh_frame); no .eh_frame_hdr table will be created
and when I tried to upgrade GLIBC it says it's up-do-date
Reading package lists... Done
Building dependency tree
Reading state information... Done
libc6 is already the newest version (2.31-0ubuntu9.7).
libc6 set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 215 not upgraded.
and then I tried manually installing the deb file from https://packages.ubuntu.com/impish/amd64/libc6/download but this shows up to me :
dpkg: regarding libc6_2.34-0ubuntu3.2_amd64.deb containing libc6:amd64:
libc6:amd64 breaks fakeroot (<< 1.25.3-1.1ubuntu2~)
fakeroot (version 1.24-1) is present and installed.
dpkg: error processing archive libc6_2.34-0ubuntu3.2_amd64.deb (--install):
installing libc6:amd64 would break fakeroot, and
deconfiguration is not permitted (--auto-deconfigure might help)
Errors were encountered while processing:
libc6_2.34-0ubuntu3.2_amd64.deb
Upvotes: 65
Views: 373235
Reputation: 1
You can also get around this error by installing create-tauri-app
using cargo
instead. The command is cargo install create-tauri-app
. You should also run cargo install tauri-cli --version '^2.0.0' --locked
while you're at it for tauri
dev/build tools.
Upvotes: 0
Reputation: 610
Came across this error while changing docker image from ubuntu to default golang image. Explicit CGO disable during build helped.
For manual launch:
CGO_ENABLED=0 go build .
My case with Dockerfile:
FROM golang:1.22
# ...
ENV CGO_ENABLED=0
# ...
RUN go build
Upvotes: 0
Reputation: 93
I had the same problem, it was an issue about the overwrite of the Environment Variable LD_LIBRARY_PATH
. Try to check this solution
Upvotes: 1
Reputation: 139
DISCLAIMER: I am not a Linux professional, just found a way for my own problem with glibc
not found error msg:
Maybe you cannot use the binary since it was compiled with gcc-11
and your gcc
version of your Linux distribution and version only is gcc-9
and therefore only provides glibc_2.31
(I guess).
You can try to compile the program yourself from source. I had to do this with the new stockfish version 15, which also uses updated glibc_2.32/2.33/2.34 and my linux-mint does not provide that.
But compiling from source worked like a charm. Maybe this is an option for you.
Upvotes: 13
Reputation: 81
I managed to compiled it with 3 parameters as follows, and it works for me. Actually, the OS version is Ubuntu 20.04, and GLIBC_2.35 is already installed.
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o ./app .
Upvotes: 7
Reputation: 61
I have some similar situation,
I copied my executed file from a CentOS VM1 to another CentOS VM2, then I got the same question, I just copy the source code to VM2,and recompile it, then the question is solved.
I got a makefile and a shell script to compile it, so the compilation process is simple, update glibc may cause other problem and is more complicated, and I am a caiji, hope to help u
Upvotes: 2
Reputation: 2381
In my case, replace FROM go:1.21
with FROM go:1.21.0-bullseye
(docker) or try tinkering there.
Upvotes: 15
Reputation: 469
I've got this error with buildroot-2022.11 when executing make
.
Ubuntu 20.04 - added this repo as described in the link
sudo apt update
sudo apt install libc6
It automatically installed 2.35 for me.
Upvotes: 32