Hallo
es ist schon etwas lange her. Bei einer statischen Verlinkung der Bibliotheken von C-Code wird die Bibliothek und dessen Symbole/Variablen-Informationen doch fest mit in das Binary verankert. Dabei kann nachher die Bibliothek von der Festplatte entfernt werden weil sie eben statisch im compilierten Binary enthalten ist. Dynamisch bedeutet doch das vor jedem Programmstart die Bibliothek zuerst geladen werden muss. Meist liegt sie dafür mit einem Link auf der Festplatte.
Nach dem Sicherheitsproblem mit ICU würde ich sehr gerne ICU dynamisch laden, weil ich mir dann einbilde das ich lediglich die Bibliothek ein mal auf den aktuellen Stand bringe und alle anderen Programme nutzen das dann bei jedem System start.
Aktuell habe ich durch das ICU Problem Liber-Office, diverse QT-Pakete, Firefox, Chromium und Webkit-GTK neu bauen müssen. Was mindestens 6 Stunden auf allen Rechnern in Anspruch genommen hat.
Wahrscheinlich habe ich auch irgendwo in meinem Gedankengang einen Fehler gemacht. Ich bilde mir zumindest ein das es auch hätte sein können das ich lediglich ICU neu baue und Dynamisch verlinken. Jetzt frage ich euch einfach danach wo mein Logikfehler ist. Seltsamerweise starteten die Anwendungen auch zwischendurch. Nachdem ICU-5.41-r1 gebaut wurde. Beispielsweise Firefox und Chromium. Obwohl Firefox mit system-icu gebaut wurde.
Hat vielleicht Firefox doch die dynamisch verlinkte Bibliothek, nach der Aktualisierung genutzt und es ist ein Fehle von Portage das dies neu gebaut wurde?
Ich bin jedenfalls verwirrt und frage mich ob es eine Möglichkeit gibt bei diversen großen Bibliotheken die lange compilieren direkt eine bessere Vorgehensweise gibt.
Gibt es vielleicht auch die Möglichkeit bestimmte Pakete auf zwei Arten zu bauen? Ein mal statisch für den Notfall und ein mal dynamisch? Quasi selber kompilieren und firefox und firefox-bin oder liberoffice und libreoffice-bin erzeugen?
Grüße Chris

