Wie können Sie bestimmen installierten Versionen der glibc (etc.) Bibliotheken?
Arbeite ich mit einer embedded-Linux-deployment und bin mit einem cross-compiler-tool-chain, die nicht kompilieren I2C-library-Funktion aufruft.
Wie bestimme ich die genauen Versionen der Bibliotheken auf dem system, so dass ich den Wiederaufbau der tool-Kette?
Ich habe nicht die Absicht zu ersetzen, die von Bibliotheken bereitgestellt werden, wie ich weiß, Sie arbeiten (einschließlich I2C), so glaube ich, brauche ich die folgenden:
- Binutils-version
- GCC version
- GLIBC
- Kernel (für die Header)
Ich denke, ich kann davon aus, dass das binutils-Bibliothek ist in version 2.2.5. Der kernel ist modded, für die habe ich die Quelle.
root@dev-box />ls /lib/ -al
drwxrwxrwx 3 root root 1024 Apr 27 09:44 .
drwxrwxrwx 14 root root 1024 Jan 1 1970 ..
-rwxrwxrwx 1 root root 105379 Jan 1 1970 ld-2.2.5.so
lrwxrwxrwx 1 root root 16 Jan 1 1970 ld-linux.so.2 -> /lib/ld-2.2.5.so
lrwxrwxrwx 1 root root 16 Jan 1 1970 ld.so.1 -> /lib/ld-2.2.5.so
-rwxrwxrwx 1 root root 1288601 Jan 1 1970 libc.so.6
-rwxrwxrwx 1 root root 25441 Jan 1 1970 libcrypt.so.1
-rwxrwxrwx 1 root root 14303 Jan 1 1970 libdl.so.2
-rwxrwxrwx 1 root root 36800 Jan 1 1970 libgcc_s.so.1
-rwxrwxrwx 1 root root 530401 Jan 1 1970 libm.so.6
-rwxrwxrwx 1 root root 86626 Jan 1 1970 libnsl.so.1
-rwxrwxrwx 1 root root 17533 Jan 1 1970 libnss_dns.so.2
-rwxrwxrwx 1 root root 46324 Jan 1 1970 libnss_files.so.2
-rwxrwxrwx 1 root root 98633 Jan 1 1970 libpthread.so.0
-rwxrwxrwx 1 root root 69966 Jan 1 1970 libresolv.so.2
-rwxrwxrwx 1 root root 12897 Jan 1 1970 libutil.so.1
InformationsquelleAutor Jamie | 2010-04-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zur glibc:
/lib/libc.so.6
Klingt vielleicht seltsam zu laufen, eine so-Datei sollte aber print version information in diesem Fall
Für die kernel-version verwenden
uname
Für die binutils Parsen der Ausgabe von
ld --version
könnte, was Sie erwarten, das gleiche fürgcc --version
. Dies ist ein wenig mühsam, aber ich weiß nicht, einen anderen Weg.Da ich weiß, dass die kernel-version, die ich habe nicht versucht, Sie
uname
auf meinem system hat es nicht funktioniert. Stattdessenversion
gibt mir Liebe.Wie kann eine Bibliothek auch eine ausführbare Datei sein?
dies ist veraltet, da neuere multiarch-layouts.
Nicht out-of-date auf meinem Ubuntu 18.04 installation, obwohl die Bibliothek gegangen und hat ein paar version in den letzten 8 Jahren.
InformationsquelleAutor jdehaan
Wissen, die aktuelle installierte version von glibc, bitte kompilieren Sie und führen Sie den folgenden C-code.
Prost !!!
InformationsquelleAutor Monir
eine umfassende Antwort gefunden werden kann, durch ausführen
Auf ein Aktuelles system diese erhalten Sie Ergebnisse, wie diese, die zeigen, ich bin mit glibc 2.28 hier auf ubuntu 18.10
Für multiarch-system können Sie mehrere Kopien für 386-und 64-Modi , ich denke, diese sollte die gleiche sein .
hatte ich keine /lib/libc.so.* auf meinem system.
InformationsquelleAutor Amias