История изменений
Исправление rtxtxtrx, (текущая версия) :
❯ ldd `which java`
linux-vdso.so.1 (0x00007ffda65e4000)
libjli.so => not found
libc.so.6 => /usr/bin/../lib/libc.so.6 (0x00007d22f6afb000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007d22f6d1f000)
❯ ldd `which python`
linux-vdso.so.1 (0x00007ffcdfde9000)
libpython3.12.so.1.0 => /usr/lib/libpython3.12.so.1.0 (0x00007c2113e00000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007c2113c1c000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007c2113b31000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007c2114505000)
linux-vdso.so.1
Это часть ядра, вроде, такого файла не существует.
❯ yay -Fx libpython3.12.so.1.0
core/python 3.12.3-1 [installed]
usr/lib/libpython3.12.so.1.0
Этот принадлежит самому питону.
❯ yay -Qo /usr/lib/libc.so.6 /usr/lib/libm.so.6 /usr/lib64/ld-linux-x86-64.so.2
/usr/lib/libc.so.6 is owned by glibc 2.39-4
/usr/lib/libm.so.6 is owned by glibc 2.39-4
/usr/lib/ld-linux-x86-64.so.2 is owned by glibc 2.39-4
Таким образом для питона нужна glibc. В Alpine ее заменяет musl.
Обои бинарники требуют musl/glibc. Еще уясни что бывают статические и динамические сборки: с потрохами и без. Я как бы намекаю, что статически собранный бинарник того же питона ничего не требует для запуска кроме того, чтобы он запускался в Linux.
Исходная версия rtxtxtrx, :
❯ ldd `which java`
linux-vdso.so.1 (0x00007ffda65e4000)
libjli.so => not found
libc.so.6 => /usr/bin/../lib/libc.so.6 (0x00007d22f6afb000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007d22f6d1f000)
❯ ldd `which python`
linux-vdso.so.1 (0x00007ffcdfde9000)
libpython3.12.so.1.0 => /usr/lib/libpython3.12.so.1.0 (0x00007c2113e00000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007c2113c1c000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007c2113b31000)
/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007c2114505000)
linux-vdso.so.1
Это часть ядра, вроде, такого файла не существуеь
❯ yay -Fx libpython3.12.so.1.0
core/python 3.12.3-1 [installed]
usr/lib/libpython3.12.so.1.0
Этот принадлежит самому питону.
❯ yay -Qo /usr/lib/libc.so.6 /usr/lib/libm.so.6 /usr/lib64/ld-linux-x86-64.so.2
/usr/lib/libc.so.6 is owned by glibc 2.39-4
/usr/lib/libm.so.6 is owned by glibc 2.39-4
/usr/lib/ld-linux-x86-64.so.2 is owned by glibc 2.39-4
Таким образом для питона нужна glibc. В Alpine ее заменяет musl.