[Frage] einzelne Programme/Binaries kompilieren

tocotac

Neuer User
Mitglied seit
30 Aug 2010
Beiträge
8
Punkte für Reaktionen
0
Punkte
1
Hallo liebe Gemeinde,

ich möchte für meine Fritzbox gerne einzelne Binaries kompiliere anstatt die freetz-Firmware zu installieren. Es geht um die Pakete:

  • openssh / dropbear
  • rsync
  • iconv

ich habe bereits fertig kompilierte Pakete von dropbear und rsync gefunden, aber das Programm iconv nicht. Des Weiteren möchte ich mich auch gerne in das Thema Cross-compiling einarbeiten.
Mein gedanklicher erster Ansatz ist, sich die entsprechenden Tools für das Kompilieren zu beschaffen. Da ich mein System (Ubuntu 12.04 LTS) damit vollstopfen möchte, habe ich das Image von Freetz-linux in Virtualbox installiert.
Zweiter Schritt: die Sourcen der Programme besorgen und entpacken


aber wie geht es weiter, denn ein ./configure && make && make install erstellt mir die Pakete für das Ubuntu, dass als Basis für freetz-linux dient.
Kann mir jemand einige Hinweise in die richtige Richtung geben?

Vielen Dank

Info:
Fritzbox 7330 (int. Version)
BuildSystem: Freetz-linux
 
Am Einfachsten nutzt du Freetz als System zum Cross-Compiling: Freetz laden und per "make menuconfig" die vorhandene Box wählen.
Dann kann man zumindest alle in Freetz vorhandenen Pakete mit "make <Paket>-precompiled" bauen.
Um sie statisch zu bauen ist es meist am besten, im Freetz zu schauen, ob ein "static"-Eintrag zum Paket existiert. wenn man den anwählt, baut ein "...-precompiled" das Paket statisch, so das man von eventuell benötigten Bibliotheken unabhängig ist.

Ist so ein Eintrag nicht vorhanden, reicht oft ein "LDFLAGS=-static make <Paket>-precompiled", sonst muss man noch Hand anlegen.

Wie man "nadere" Pakete mit Freetz bauen kann, sowie all das gesagte ien "Ausführlich", findest du im Wiki zu Freetz
 
Hallo MaxMuster,

die Installation von Freetz auf der Fritzbox wollte ich eigentlich vermeiden, denn ich weiß nicht, ob mir freetz die selben Funktionen zur Verfügung stellt wie die originale AVM-Firmware.
Des Weiteren habe ich ein wenig Skrupel, denn meine aktuelle Firmware ist die Version 107.05.24 und ich finde auf den AVM-Servern (ftp://ftp.avm.de/fritz.box/fritzbox.7330/x_misc/english/) kein passendes Rescueimage [1]. Das Rescueimage möchte ich nur im Falle des Falle bereit haben :-) Und als letzter Punkt gegen Freetz ist die Garantie, die ich evtl. verliere.

Vielleicht kannst Du mir einige Zweifel ausräumen:
- wenn ich freetz kompiliere wie hier angegeben, nur mit Angabe des Modells, welche Funktionen habe ich dann auf der Fritzbox?
- kann ich von Freetz wieder auf die AVM-Firmware zurückwechseln?
- wegen dem Rescueimage warte ich auf den Support von AVM

[1] Bzgl. der Firmware habe ich bereits bei AVM nachgefragt, warum auf den FTP-Server eine neue Version vorhanden ist und die Fritzbox keine neue Version findet und mit welchen Komplikationen ich rechnen kann, wenn ich die AVM-Firmware manuell einspiele.

Vielen Dank
 
Da hast du mich missverstanden. Du "missbrauchst" Freetz lediglich, um die Programme zu übersetzen. Du musst dafür nicht Freetz auf der Box installieren.
(Grundsätzlich "entfernt" aber Freetz nichts aus der Firmware (nichts, was du nicht so auswählst) so dass es nur eine Erweiterung ist, alle AVM-Funktionen bleiben. )

Die obrigen Schritte sind nur nötig, um die passende Cross-Compile-Umgebung für die jeweilige Box zu bekommen.

Die wie oben genannt (xy-precompiled) übersetzten Programme sind dann in packages/target..../<Paket>/... zu finden, statisch gebaut sollten sie dann ohne weiteres auf ungefreetzen Boxen laufen.
 
Hallo tocotac,

leider finde ich keinerlei Infos, wozu du liiconv brauchst. Ich habe diese shared lib kompiliert und hänge das mal an. Ob du sie allerdings so benutzen kannst, weis ich nicht ;)

Viele Grüße
R@d
 

Anhänge

Guten Morgen MaxMuster und radislav,

ich werde es heute versuchen die Pakete zu kompilieren.
@radislav: die libiconv benötige ich für rsync, da ich von UFT8 auf ISO8859-1 synchronisieren möchte.

Ich werde euch, über Erfolg und/oder Misserfolg, auf dem Laufenden halten.

Vielen Dank
 
Des Weiteren habe ich ein wenig Skrupel, denn meine aktuelle Firmware ist die Version 107.05.24 und ich finde auf den AVM-Servern (ftp://ftp.avm.de/fritz.box/fritzbox.7330/x_misc/english/) kein passendes Rescueimage [1]. Das Rescueimage möchte ich nur im Falle des Falle bereit haben :-)

Du brauchst nicht ein Recover in der gleichen Version, es reicht auch ein älteres Recover. Bei Bedarf kannst Du dieses durchführen und danach normal auf eine neuere Version updaten. Alle Einstellungen werden beim Recover gelöscht, also sollte man diese vorher sichern.
Von Freetz kommt man ganz einfach auf AVM Firmware zurück. Entweder führt man wie oben genannt das Recover durch, oder man macht ein Update auf AVM Firmware.
 
Hallo RaflFriedl,

das Problem ist eher andersherum. Z.Z. habe ich die Version 107.05.24 und auf den FTP-Server ist die neuere Version 107.05.50 vorhanden. Vielleicht findet man die Firmware 107.05.24 in Netz auf irgendwelchen "unseriösen" Seiten und wer weiß, ob die Firmware nicht modifiziert wurde...
 
Danke MaxMuster, ich kannte nur den ftp.avm.de Server...
 
Kostenlos!

Statistik des Forums

Themen
248,906
Beiträge
2,304,652
Mitglieder
378,611
Neuestes Mitglied
AlexSuess