Statically link libraries ?

Jackis

Neuer User
Mitglied seit
21 Dez 2006
Beiträge
38
Punkte für Reaktionen
0
Punkte
0
Hallo,

was bedeutet das feuture: "Statically link libraries"

MfG
 
5 Antworten dazu, die erst einmal reichen. Ansonsten sit google dein Freund. Oder eine andere Suchmaschine deiner Wahl. Eines sei gesagt: Statisch gelinkte Sachen sind defintiv grösser, weil sie alles mögliche enthalten, was sonst ausgelagert wird. Allerdings gibt es im Freetz vor allen bei den Crypt-Sachen Probleme mit den AVM-Bibliotheken, von daher sollte man tatsächlich, wenn man den Platz hat, statisch linken, denn dann nämlich wird die AVM-Bibliothek nicht von der Freetz-Bib ersetzt, und die Probleme tauchen eben nicht auf.
 
Hmmm, wie erkläre ich es meinem Kinde? ;-)

Normalerweise erfindet man das Rad ja nicht 2 mal. Es gibt schon reichlich viele "fertige" Bibliotheken. Wenn man nun z.B. ein eigenes Programm kompiliert, kann man diese fertigen Bibliotheken verwenden (und braucht somit die Funktionalität nicht nochmal selber programmieren).

Es gibt beim Kompilieren 2 Möglichkeiten:
1) Entweder kompiliert man dynamisch, dann wird aus dem eigenen Code heraus lediglich die existierende Bibliothek referenziert. Man benötigt also beides, das eigene Binary und das der Bibliothek.
2) Man kann die aus einer Bibliothek verwendeten Funktionalitäten auch mit in das eigene Binary übernehmen. Damit braucht man nur noch ein Binary.

Beides hat Vor- und Nachteile. Beim ersten Punkt kann man viel Platz sparen, wenn viele Programme die gleiche Bibliothek verwenden. Denn dann braucht die Bib. nur einmal existieren. Allerdings muss diese Bibliothek dann im "Suchpfad" zu finden sein, damit das Betriebssystem die Bibliothek auch findet. Beim 2. Punkt hat man alles in einem, das hat Vorteile, wenn die Bibliothek sowieso nur von einem Programm verwendet wird. Und auch dann, wenn man keine einfache Möglichkeit hat, dem Betriebssystem neue Bibliotheken unter zu schieben.

Aber um schließlich die Frage zu beantworten:
1) ist dynamisches Linken
2) ist statisches Linken

Hoffe, das war verständlich.

@Silent-Tears: Du warst schneller, aber jetzt hatte ich schon sooo viel getippt ;)
 
Wenn du dir nen Image bastelst wo du diese Option für das jeweilig Paket nicht auswählst kann es sein dass du eine dauer-rebootende Box hast die du recovern musst.

Du kannst es gerne immer ohne diese Option versuchen, die Vor- und Nachteile wurden ja beschrieben. Bevor du aus dem menuconfig rausgehst solltest du mal bei Advanced, Shared Libraries, Crypto reinschauen um rauszufinden ob irgendwelche Pakete ausgewählt wurden [---]. Trifft auf den unteren Bereich zu wegen OpenSSL / libcrypto. Hab grad kein Freetz hier um dir alle Namen genau rauszusuchen. Bei den aktuellen Firmwares läuft da halt einiges nicht mehr und daher die Abstürze der Box. Also statically linked libraries auswählen wenn notwendig.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.