Ich habe eine Anwendung installiert [zB fdisk]. Für die Ausführung waren jedoch Bibliotheken erforderlich. Ich bin auf der Suche nach einem Dienstprogramm / Tool, mit dem ich aus bereits installierten Binärdateien eine statische Binärdatei erstellen kann . Damit ich es überall einsetzen kann.
Das einzige zuverlässige Tool, das ich gefunden habe, ist ErmineLight
von
hier , aber dieses ist Share-Ware.
Gibt es Open-Source-Software für das gleiche?
EDIT
fdisk ist nur ein Beispiel. Ich arbeite die meiste Zeit an LFS. Wenn ich also ein Dienstprogramm verwenden muss, muss ich die folgenden Schritte ausführen:
- Laden Sie die Quelle herunter
- konfigurieren
- machen
- Test machen
- machen installieren,
Um Zeit zu sparen, suche ich nach einer Lösung, in der ich eine statische Binärdatei aus Debian oder Fedora oder einer anderen Distribution erstellen, sie in LFS ausprobieren und wenn sie einwandfrei funktioniert oder meinen Anforderungen entspricht, werde ich es tun Gehen Sie mit Quellcode für die Kompilierung.
Antworten:
Wenn fdisk nur ein Beispiel ist und Ihr Ziel darin besteht, statische ausführbare Dateien aus dynamischen ausführbaren Dateien zu erstellen , versuchen Sie es mit Elf statifier . Es gibt sogar einen Vergleich mit Ermine (vom Ermine-Verkäufer, also Vorbehalt (Nicht-) Emptor) . Beachten Sie, dass
Wenn Sie eine kleine, tragbare Suite von Systemtools haben möchten , suchen Sie nach BusyBox , einer Suite von Kerntools für eingebettete Systeme (einschließlich
fdisk
). Möglicherweise interessieren Sie sich auch für eine kleinere Standardbibliothek als Glibc, z. B. Dietlibc oder µClibc .quelle
Nun ... das sieht nach einer sehr schlechten Idee aus. Aber es ist möglich.
Da es sich bei fdisk um Open Source handelt, nehmen Sie einfach den Quellcode und schauen Sie sich das Makefile an. Sie sollten eine Option finden, die beim Kompilieren "-static" an gcc übergibt.
Ich bin kein C / C ++ - Guru, aber soweit ich weiß, ist das Erstellen einer statisch verknüpften Binärdatei aus einer vorhandenen dynamisch verknüpften Binärdatei nicht möglich.
Wenn Sie es überall verwenden möchten, würde ich empfehlen, eine winzige Wartungsdistribution zu verwenden, die innerhalb von Sekunden startet und Sie alles ändern lässt.
Das ist für mich sinnvoller, weil Sie wahrscheinlich die Festplatte ändern möchten, auf der Ihre Linux / UNIX-Installation ausgeführt wird.
quelle
Sie können auch ELFex Linker verwenden , ein ziemlich cooles Programm, das ich gerade entdeckt habe, seine GUI und Sie können statische ausführbare Dateien aus der dynamischen ausführbaren Datei erstellen.
quelle