[lug-ld] Programm unter Fedora kompiliert, unter Debian Laufen lassen

Christian Ehrhardt Paelzer+lugld at gmail.com
Mo Mai 30 07:27:01 CEST 2022


On Mon, May 23, 2022 at 6:40 PM Jean-Jacques Sarton
<jj.sarton at t-online.de> wrote:
>
> Hallo all,
>
> hat schon jemanden ein Programm unter ein nicht Debian basierten System
> kompiliert und auch ein Debian basierten System zu laufen bekommen?

Hi,
ich vermute du willst keine "große Kapselung" mit snap, flatpack o.Ä.
falls doch sag bescheid.
(Denn damit geht "Ubuntu prog auf Fedora" letztendlich auch)

Under obigen Annahme ist das normale Problem ja erst einmal primär die
.so files Hürde zu überwinden:

$ ./hello
./hello: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by ./hello)

Das entspricht dem linking a la:

$ ldd hello
linux-vdso.so.1 (0x00007ffe58bd3000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fa2e1753000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa2e198b000)

Doch eigentlich ist die Antwort "nur" mach es einfach static.

$ gcc -Wall -static hello.c -o hello
$ ldd hello
not a dynamic executable

Und nach copy zu Fedora:

$ ./hello
Hello World

So weit klappt das, aber irgendwas sagt mir das dein Problem komplexer
sein muss ...!?
Wenn du z.B. software mit plugins hast die via dlopen funktionieren
oder libs die nicht so einfach static linkbar sind.
Auch Klassiker wie /etc/sysconfig die es nicht überall gibt und
ähnliches gibt es natürlich zu beachten.

Hast Du noch Details was genau das Problem darstellt?

P.S. Das Beispiel was Ubuntu Impish -> Fedora 34 weil ich gerade
ohnehin die Container aufäumte, sollte aber immer so klappen.

> LG,
>
> Jean-Jacques
>
> _______________________________________________
> lug-ld mailing list
> lug-ld at lists.lug-ld.de
> http://lists.lug-ld.de/mailman/listinfo/lug-ld



Mehr Informationen über die Mailingliste lug-ld