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

Alpine latest, glibc 2.34, several issues #167

Open
stncrn opened this issue Sep 8, 2021 · 16 comments
Open

Alpine latest, glibc 2.34, several issues #167

stncrn opened this issue Sep 8, 2021 · 16 comments
Labels

Comments

@stncrn
Copy link

stncrn commented Sep 8, 2021

Hello,

I'm having trouble in using your latest glibc 2.34 in an alpine container (latest).

What I'm running:

In docker-compose.yml:

services:
    alp:
        image: alpine
        container_name: alp
        volumes:
            - /path/to/proteccio/libnethsm.so:/opt/tw_proteccio/lib/libnethsm.so
        command: tail -f /dev/null

Then on the host:

docker-compose up -d
docker exec -ti alp sh

And finally in the container:

wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.34-r0/glibc-2.34-r0.apk
apk add glibc-2.34-r0.apk
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.34-r0/glibc-bin-2.34-r0.apk
apk add glibc-bin-2.34-r0.apk
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.34-r0/glibc-i18n-2.34-r0.apk
apk add glibc-i18n-2.34-r0.apk

Then, when running:
/usr/glibc-compat/bin/localedef -i en_US -f UTF-8 en_US.UTF-8

I get :

[error] character map file `UTF-8' not found: No such file or directory
[error] default character map file `ANSI_X3.4-1968' not found: No such file or directory

I also tried to check if my .so is now beeing linked with the new libc. Problem, the ldd from your package cannot be executed:

/usr/glibc-compat/bin/ldd /opt/tw_proteccio/lib/libnethsm.so
sh: /usr/glibc-compat/bin/ldd: not found

ldd /usr/glibc-compat/bin/ldd
/lib/ld-musl-x86_64.so.1: /usr/glibc-compat/bin/ldd: Not a valid dynamic program

Seems like the added libs are not being used at all.
I also tried
export LD_LIBRARY_PATH=/usr/glibc-compat/lib
before the other commands, it didn't changed anything.

Last info, the symbols the .so is missing with the musl libc:

ldd /opt/tw_proteccio/lib/libnethsm.so
        /lib/ld-musl-x86_64.so.1 (0x7f7d30b2c000)
        libdl.so.2 => /lib/ld-musl-x86_64.so.1 (0x7f7d30b2c000)
        libpthread.so.0 => /lib/ld-musl-x86_64.so.1 (0x7f7d30b2c000)
        libc.so.6 => /lib/ld-musl-x86_64.so.1 (0x7f7d30b2c000)
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __strcat_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __vfprintf_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdrmem_create: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_u_char: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_opaque_auth: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_callhdr: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_vector: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_u_long: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_pointer: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __fdelt_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_opaque: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: clnttcp_create: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: authnone_create: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_array: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __register_atfork: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __strdup: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdrrec_endofrecord: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __memcpy_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __stpcpy_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_u_int: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdrrec_skiprecord: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_replymsg: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_bytes: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: pmap_getport: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_int: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdrrec_create: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __strcpy_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_long: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: clnt_sperrno: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __printf_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __memset_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __fprintf_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_bool: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: __sprintf_chk: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: rpc_createerr: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: xdr_void: symbol not found
Error relocating /opt/tw_proteccio/lib/libnethsm.so: _null_auth: symbol not found

I also tried glibc 2.33 instead of 2.34, with the same results.

A restart of the container didn't helped either. (docker restart alp)

What I'm trying to do seems quite basic, do you ave any idea of what's going wrong so quickly?
Thanks.

@yaoqi
Copy link

yaoqi commented Sep 12, 2021

I met the same problem, anyone help?

@elvizlai
Copy link

When using github action, I also has same issue.

but when I build locally, it works fine.

@prantlf
Copy link

prantlf commented Sep 21, 2021

I can confirm that running /usr/glibc-compat/bin/localedef -i en_US -f UTF-8 en_US.UTF-8 in a container based on alpine:latest locally works, but the same in a ci/cd pipeline on gitlab.com fails. However, downgrading the three glibc packages from 2.34 to 2.33 fixes the problem. Is glibc-i18n-2.34-r0.apk missing some files, which are "magically" not needed in the local Linux VM used by Docker for Mac, but are missing, when run on a GitLab runner?

Successful build job of alpine 3.14 and glibc 2.33.
Failed build job of alpine 3.14 and glibc 2.34.

Step 4/6 : RUN ls -l /usr/glibc-compat/share/i18n/locales/en_US
-rw-r--r--    1 root     root          3688 Aug 19 15:53 /usr/glibc-compat/share/i18n/locales/en_US
Step 5/6 : RUN ls -l /usr/glibc-compat/share/i18n/charmaps/UTF-8.gz
-rw-r--r--    1 root     root        434115 Aug 19 15:53 /usr/glibc-compat/share/i18n/charmaps/UTF-8.gz
Step 6/6 : RUN	/usr/glibc-compat/bin/localedef -i en_US -f UTF-8 en_US.UTF-8
[error] character map file `UTF-8' not found: No such file or directory
[error] default character map file `ANSI_X3.4-1968' not found: No such file or directory

Does localedef not look to glibc-compat any more?

Setting I18NPATH=/usr/glibc-compat/share/i18n and enabling verbose logging according to the documentation does not change the output and result of localedef either. Strange.

@muicoder
Copy link

I met the same problem!

@prantlf
Copy link

prantlf commented Sep 27, 2021

Enabling strace revealed a failure when trying to use the gzipped file:

openat(AT_FDCWD, "/usr/glibc-compat/share/i18n/charmaps/UTF-8", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/glibc-compat/share/i18n/charmaps/UTF-8.gz", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=434115, ...}, AT_EMPTY_PATH) = 0
pipe([5, 6])                            = 0
prlimit64(0, RLIMIT_NOFILE, NULL, {rlim_cur=1024*1024, rlim_max=1024*1024}) = 0
prlimit64(0, RLIMIT_NOFILE, NULL, {rlim_cur=1024*1024, rlim_max=1024*1024}) = 0
prlimit64(0, RLIMIT_NOFILE, NULL, {rlim_cur=1024*1024, rlim_max=1024*1024}) = 0
prlimit64(0, RLIMIT_NOFILE, NULL, {rlim_cur=1024*1024, rlim_max=1024*1024}) = 0
prlimit64(0, RLIMIT_NOFILE, NULL, {rlim_cur=1024*1024, rlim_max=1024*1024}) = 0
prlimit64(0, RLIMIT_NOFILE, NULL, {rlim_cur=1024*1024, rlim_max=1024*1024}) = 0
prlimit64(0, RLIMIT_NOFILE, NULL, {rlim_cur=1024*1024, rlim_max=1024*1024}) = 0
mmap(NULL, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7fbab988b000
rt_sigprocmask(SIG_BLOCK, ~[], [], 8)   = 0
clone3({flags=CLONE_VM|CLONE_VFORK, exit_signal=SIGCHLD, stack=0x7fbab988b000, stack_size=0x9000}, 88) = -1 EPERM (Operation not permitted)

Alpine 3.14 has a new security call, which needs Docker 20.10.6 or newer and got recognised by GitLab. The error that I encountered might have been specific to GitLab caused by this incompatibility.

I gunzipped the UTF-8 charmap as a workaround, which got the build green:

gunzip --keep /usr/glibc-compat/share/i18n/charmaps/UTF-8.gz

@budo76
Copy link

budo76 commented Oct 8, 2021

Same problem here. Trying to use pdfium binary library from here:
https://github.com/bblanchon/pdfium-binaries/releases/
that works on ubuntu (glibc) but doesn't on alpine (musl) because musl implementation of glic miss some symbols... so i installed this glibc compatible package hoping that will work... but I even cannot try its "ldd" to analyse the library because ldd cannot be run...
I cannot understand what I'm missing... its ldd cannot be run, and the default ldd (from musl) cannot be configured to make use of this glibc implementation ... so...?

@prantlf
Copy link

prantlf commented Oct 8, 2021

@budo76, the prolog of /usr/glibc-compat/bin/ldd reveals the problem:

#! /usr/bin/bash
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
# This file is part of the GNU C Library.

There is no /usr/bin/bash on Alpine. Even if you run apk add bash, you will get Bash in /bin/bash. You can assume that the sh on Alpine is Busybox, which includes Bash and fix the shebang after you install this package in your container:

sed -i 's#/usr/bin/bash#/bin/sh#' /usr/glibc-compat/bin/ldd

Or you could symlink the bash file:

ln -s /bin/sh /usr/bin/bash 

@budo76
Copy link

budo76 commented Oct 11, 2021

OK @prantlf ... I installed bash (indeed there's bash in Alpine!) and now the provided "ldd" starts but still not working (state that I have no read permission on the "libpdfium.so" but it's 777 so I can read it indeed). I tried to use the provided "ldd" because somewhere else (can't find now) someone suggested so, but it was just to analyse the lib to findout if it was all ok.
I'm trying to link the library in a "golang" software, so I tried setting the appropriate env variabile for the "cgo" compiler manually... so CGO_LDFLAGS="-L/usr/glibc-compat/lib".
Still no luck... it reads:
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: cannot find /usr/glibc-compat/lib/libc_nonshared.a
So perhaps in this "compatible glibc" distribution there's still something missing?

@budo76
Copy link

budo76 commented Oct 11, 2021

OK @prantlf ... I installed bash (indeed there's bash in Alpine!) and now the provided "ldd" starts but still not working (state that I have no read permission on the "libpdfium.so" but it's 777 so I can read it indeed). I tried to use the provided "ldd" because somewhere else (can't find now) someone suggested so, but it was just to analyse the lib to findout if it was all ok. I'm trying to link the library in a "golang" software, so I tried setting the appropriate env variabile for the "cgo" compiler manually... so CGO_LDFLAGS="-L/usr/glibc-compat/lib". Still no luck... it reads: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: cannot find /usr/glibc-compat/lib/libc_nonshared.a So perhaps in this "compatible glibc" distribution there's still something missing?

Ok I found that the "dev" package was missing and I installed it. Now I get this:

/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: warning: libpthread.so.0, needed by /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so, not found (try using -rpath or -rpath-link)
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: warning: libm.so.6, needed by /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so, not found (try using -rpath or -rpath-link)
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /lib/libc.musl-x86_64.so.1: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /lib/libc.musl-x86_64.so.1: warning: the use of `mktemp' is dangerous, better use `mkstemp' or `mkdtemp'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /lib/libc.musl-x86_64.so.1: warning: the `gets' function is dangerous and should not be used.
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /lib/libc.musl-x86_64.so.1: warning: the use of `tempnam' is dangerous, better use `mkstemp'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `floor@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `ceil@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `log10f@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `lrintf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `acosf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `sqrtf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `sqrt@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `floorf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `log10@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `atan2f@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `roundf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `powf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `ceilf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `exp@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `log@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `sinf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `logf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `round@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `cosf@GLIBC_2.2.5'
/usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../lib/libpdfium.so: undefined reference to `pow@GLIBC_2.2.5'
collect2: error: ld returned 1 exit status

.. for what I understand the "libm" library is missing (and it complains on symbols that seem to be "math" functions).. in alpine there's the lib6-compat that provides those libraries but it' not compatible with this glibc alternative so I cannot install them. Any idea?

@sgerrand
Copy link
Owner

Hello and thanks for raising these errors. There are 2 raised:

  1. missing character map files when using /usr/glibc-compat/bin/localedef
  2. error when running /usr/glibc-compat/bin/ldd

The first error is a valid one and I'll look into fixing this over the course of this week. The second error is caused by /usr/glibc-compat/bin/ldd using /bin/bash, so you just need to make sure that it's installed.

@sgerrand
Copy link
Owner

The second error is caused by /usr/glibc-compat/bin/ldd using /bin/bash, so you just need to make sure that it's installed.

On (near instantaneous) reflection, it would make more sense to have bash installed as a dependency of glibc-bin so I'll make that change now.

@sgerrand
Copy link
Owner

The previous comment was done in ee7ffc8.

@sgerrand sgerrand added the bug label Mar 14, 2022
@sgerrand
Copy link
Owner

I missed the third aspect of this bug report – apologies!

Last info, the symbols the .so is missing with the musl libc:

ldd /opt/tw_proteccio/lib/libnethsm.so

You should always use /usr/glibc-compat/bin/ldd (note the prefix) when attempting to use ldd on compiled files. The musl-c equivalent will return invalid responses as it has different expectations from the GNU equivalent.

@rhbecker
Copy link

Just to double check ...

  1. The "missing character map files when using /usr/glibc-compat/bin/localedef" issue was NOT addressed as part of the 2.35-r0 release?
  2. You still intend to address it?

@sgerrand
Copy link
Owner

Just to double check ...

  1. The "missing character map files when using /usr/glibc-compat/bin/localedef" issue was NOT addressed as part of the 2.35-r0 release?

That's correct, sorry. I haven't had any free time to look into it further.

  1. You still intend to address it?

If you're asking whether I still plan to fix this bug – yes, I do. Unfortunately that's dependant on when I get that free time to do so. If you happen to have the time to fix it then please submit a patch and I'll happily review it!

@rhbecker
Copy link

rhbecker commented May 10, 2022

@prantlf's tip here ...

I gunzipped the UTF-8 charmap as a workaround, which got the build green:

gunzip --keep /usr/glibc-compat/share/i18n/charmaps/UTF-8.gz

... might be worth including in the README.md Locales example ...

wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.35-r0/glibc-bin-2.35-r0.apk
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.35-r0/glibc-i18n-2.35-r0.apk
apk add glibc-bin-2.35-r0.apk glibc-i18n-2.35-r0.apk
gunzip --keep /usr/glibc-compat/share/i18n/charmaps/UTF-8.gz
/usr/glibc-compat/bin/localedef -i en_US -f UTF-8 en_US.UTF-8

It unblocked my issue, but it took me a while to notice that comment among the many on this issue, and to then connect the dots. If nothing else, maybe this comment will help someone else make that same connection.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

8 participants