Shared Libraries: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
==,so== | ==Erstellen== | ||
Shared Libraries sind Bibliotheken, die von mehreren Programmen genutzt werden können. Sie sind in der Regel in C oder C++ oder Rust oder Golang geschrieben und haben die Endung .so (Shared Object) unter Linux. | |||
* Rust | ==Shared Libraries Testen== | ||
* | Testen von Shared Libraries: | ||
ldd | |||
<pre> | |||
export LD_LIBRARY_PATH=/home/thorsten/start/test:$LD_LIBRARY_PATH | |||
</pre> | |||
Um sicherzustellen, dass die Shared Library korrekt geladen wird, können Sie den Befehl `ldd` verwenden, um die Abhängigkeiten zu überprüfen: | |||
<pre> | |||
ldd /home/thorsten/start/test/libmeinebibliothek.so | |||
</pre> | |||
Die Ausgabe zeigt die dynamischen Abhängigkeiten der Shared Library an. Wenn alle Abhängigkeiten aufgelöst sind, sollte die Bibliothek korrekt funktionieren. | |||
Sie können auch ein kleines Testprogramm schreiben, um die Funktionalität der Shared Library zu überprüfen. Hier ist ein Beispiel in C: | |||
<pre> | |||
#include <stdio.h> | |||
#include "meinebibliothek.h" | |||
int main() { | |||
printf("Test der Shared Library\n"); | |||
meine_funktion(); | |||
return 0; | |||
} | |||
</pre> | |||
Kompilieren Sie das Testprogramm und führen Sie es aus: | |||
<pre> | |||
gcc -o testprogramm testprogramm.c -L/home/thorsten/start/test -lmeinebibliothek | |||
./testprogramm | |||
</pre> | |||
Stellen Sie sicher, dass das Verzeichnis mit der Shared Library in der `LD_LIBRARY_PATH` enthalten ist, bevor Sie das Testprogramm ausführen. | |||
<pre> | |||
export LD_LIBRARY_PATH=/home/thorsten/start/test:$LD_LIBRARY_PATH | |||
</pre> | |||
==Systeminstallieren== | |||
Um eine Shared Library systemweit zu installieren, folgen Sie diesen Schritten: | |||
<pre> | |||
sudo cp libmeinebibliothek.so /usr/local/lib/ | |||
sudo ldconfig | |||
</pre> | |||
# Kopieren der Shared Library: Der Befehl `sudo cp libmeinebibliothek.so /usr/local/lib/` kopiert die Shared Library `libmeinebibliothek.so` in das Verzeichnis `/usr/local/lib/`. `sudo` wird verwendet, um den Befehl mit Administratorrechten auszuführen, da das Zielverzeichnis systemweit ist und erhöhte Berechtigungen erfordert. | |||
# Aktualisieren des Linker-Cache: Der Befehl `sudo ldconfig` aktualisiert den Cache des dynamischen Linkers/Loaders. Dadurch wird sichergestellt, dass die neu hinzugefügte Shared Library vom System erkannt und verwendet werden kann. | |||
Nach diesen Schritten sollte die Shared Library systemweit verfügbar sein und von allen Programmen, die sie benötigen, genutzt werden können. | |||
* [[Shared Libraries .so Erstellen mit Rust]] | |||
* [[Shared Libraries .so Erstellen mit C++]] |