Heim  >  Artikel  >  System-Tutorial  >  Eingehende Analyse der gemeinsamen Kompilierungstechnologie der Dynamic Link Library von Centos

Eingehende Analyse der gemeinsamen Kompilierungstechnologie der Dynamic Link Library von Centos

WBOY
WBOYnach vorne
2024-01-10 13:26:391248Durchsuche

Was ist eine dynamische Linkbibliothek?

Unter Windows ist es Dynamic Linklibrary (DLL), Suffix? xxx.dll

Freigegebene Bibliothek unter UNIX oder Linux Das Suffix ist xxx.so

Kompilieren Sie die Datei in einer Dynamic Link Library im .so-Format

gcc -o libme.so wso.c -shared

Kompilieren Sie wso.c in libme.so und der Name der Bibliothek lautet „me“

lib, ebenso das Präfix und Suffix

Gemeinsame Zusammenstellung

gcc -L /root/myc/ -l me ws.c -o newws

-L Ordnerspeicherort der Dynamic Link Library

-l Der Bibliotheksname der Dynamic Link Library (entfernen Sie die erste Bibliothek und .so, um den Bibliotheksnamen zu erhalten)

Als nächstes werden Sie feststellen, dass die Kompilierung erfolgreich war, der Vorgang jedoch immer noch fehlschlägt

Der Grund für den Fehler ist, dass das Betriebssystem es nicht finden kann

Tatsächlich verfügt Linux wie Windows über einen Systembibliotheksordner, der system32 ähnelt. Hier sind verschiedene öffentliche Klassenbibliotheken untergebracht

CentOS verfügt über zwei Ordner, in denen öffentliche Bibliotheken gespeichert sind, die Windows sehr ähnlich sind

/lib Kernel-Ebene

/usr/lib Benutzersystemebene

/usr/lib64/ Nur für 64-Bit-Systeme verfügbar

Sie müssen die von Ihnen erstellte Bibliothek erstellen, es spielt keine Rolle, ob Sie sie auf zufällige Weise platzieren

Lösung

Kopieren Sie die von uns erstellte SO-Datei in die öffentliche Bibliothek (Befehl cp)

Führen Sie dann ldconfig aus (die dynamische Bibliothek wird zwischengespeichert. Wenn neue Dinge hinzugefügt werden, muss der Cache erneut aktualisiert werden)

Newws erfolgreich ausführen

Das obige ist der detaillierte Inhalt vonEingehende Analyse der gemeinsamen Kompilierungstechnologie der Dynamic Link Library von Centos. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen