Termenul pentru care trebuie căutat pe Google este „versiune simbol glibc”.
La fel de această introducere explică, glibc conține mai multe versiuni ale fiecărui simbol care s-a schimbat de-a lungul timpului și așadar libc.so.6
conține toate versiunile glibc de la 2.0 până la orice versiune spune.
Când conectați o nouă bibliotecă sau un binar cu acesta, utilizați .h
fișiere și simboluri exportate pentru cele mai noi versiuni ale simbolurilor.
În ceea ce privește accesarea simbolurilor mai vechi, există o întrebare pe StackOverflow numită Cum pot conecta la o anumită versiune glibc?, dar pentru că toate celelalte dependențe sunt probabil să se conecteze și cu cele mai noi simboluri, este mult mai ușor să utilizați Docker sau un chroot pentru a viza versiuni mai vechi de sistem, deoarece probabil veți ajunge să construiți unul de la zero dacă nu o faceți.
Dezvoltatorii Python mențin de fapt containerele Docker numite multelinux...
special pentru stabilirea unei linii de bază fiabile pentru construirea de roți (pachete binare redistribuibile) pentru pachetele Python cu componente compilate.
Cred că abordarea Windows este mai aproape de a grupa mai multe profiluri clar definite și de a îndemna toți autorii bibliotecilor precompilate să ofere versiuni care vizează profiluri mai vechi. (Cu avertismentul că trebuie să vă asumați aceste lucruri trebuie sa fi liber
d de aceeaşi unitate de compilare care malloc
Aș fi, deoarece PE nu are simboluri globale și biblioteci diferite pot depinde de diferite versiuni ale alocătorului cu propriile lor static
variabile și diferențe semantice.)