[geloest]C-Files selbst Kompilieren für die Fritzbox?

chriwi

Mitglied
Mitglied seit
14 Nov 2005
Beiträge
705
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich würde gerne ein kleines C-File so kompilieren, das ich es in der Telnet-shell der FB7050 ausführen kann.
Was brauche ich dafür und wie geht das, gibt es vielleicht ein Howto?

Ich habe ein Ubuntu7.04 auf dem PC und habe schonmal einen DS-Mod selber gebaut, mehr leider bisher nicht.

tschüs

chriwi
 
Zuletzt bearbeitet:
du brauchst einen crosscompiler, bzw. ein toolchain.
fritzbox ist andere cpu architektur als dein pc...sprich du kannst es nicht mit dem nomalen compiler von deinem pc übersetzen.
desweiteren sind die biblotheken nicht dynamisch gelinkt sondern statisch weil auf der fritzbox nicht soviel platz ist.
ich meine du findest im forum oder bei google ein toolchain..
viel spaß
gruß carlo
 
Hallo carlofbf,

das ist mir alles bekannt, ich kenne Crosscompiler und CDK-Toolchains von anderen Geräten (Dreambox und NSLU2), aber ich suche halt ein Howto für die Fritzbox und habe mit suchen halt nichts gefunden.
Ich würder trotzdem lieber statisch linken um nicht Probleme wegen der Libs zu bekommen, ich habe auf meiner FB7050 den DS-Mod und habe über NFS ein Verzeichnis von meinem NAS(NSLU2) gemounted, Platz im Filesystem ist somit kein Problem.

tschüs

chriwi
 
Hallo Knox,

Danke für die Antwort.

Also gut die Toolchain habe ich dann also schon, da ich ja schonmal eien DS-Mod gebaut habe.
Im WIKI auf das dein Link zeigt sthet zwar das man damit eigenen C-Code kompilieren kann aber es steht nicht da wie man das macht (ich habe möglicherweise nur en code.c- und ein code.h-File, kein Makefile), gibts dazu vielleicht noch nen anderes Howto oder WIKI?
 
chriwi schrieb:
ich habe möglicherweise nur en code.c- und ein code.h-File, kein Makefile
wer .c sagt muss auch Makefile sagen :p
 
Hallo Knox,

> wer .c sagt muss auch Makefile sagen.

nicht immer, zuletzt hatte ich nen Sourcecode, der bstand nur aus nem C-File, nem H-File und nem Shellscript in dem gcc und die anderen Tools direkt aufgerufen wurden. Obwohl der sourcecode eigentlich für nen PC gedacht war liessen sie sich mit einer Toolchain, die allerdings nativ auf dem NSLU2 läuft problemlos übersetzen und die Binary funktioniert auch. Jetz möchte ich das selbe Projet (uptim-project) oder ein ähnliches Nachfolgeprojekt auch für die FB7050 kompilieren, vermutlich wieder ohne Makefile, oder ich brauche ne Howto wie ich selbst eins schreibe, das kann ja bei nur 2 Sourcefiles auch nicht so schwierig sein.

tschüs

chriwi
 
Knox hat da schon recht. Makefiles sind nichts anderes wie Shellskripte, wobei diese etwas anders interpretiert werden.

Ohne Makefile gehts natürlich auch. Also direkt den 'mipsel-linux-gcc' aufrufen und die *.c Dateien als Parameter übergeben (schau einfach mal in das bereits vorhandene Compile-Skript und ändere es ab!).

An die "PATH=" Variable hängst du dann noch '/home/???/ds-0.2.9/toolchain/target/bin' an, damit der Compiler auch gefunden wird.

Statisch linken geht mit '-static' und '-static-libgcc'

Das war's!
 
Genau.
Pfad erweitern und dann "mipsel-linux-gcc -static -o bar foo.c".

MfG Oliver
 
Hallo bodega & olistudent,

Danke für die Antwort,

so etwa habe ich es mir vorgestell, nur all die Ratschläge wie schaus dir mal bei einem vorhandenen Beispiel an und mach es genauso sind bisher daran gescheitert das ich kein Beispiel gefunden habe, wo finde z.B. ein Sorcepaket von foo.c für die Fritzbox oder irgendwas anderes kleines wo ich abschreiben kann?

tschüs

chriwi
 
Hallo olistudent & bodega,

Danke fuer eure Hilfe. :)

Ich hatte den Compiler zwar doch noch nicht obwohl ich schonmal ein DS-Mod-Immage zusammengebaut habe, aber die sourcen fuer die Toolchain waren im DS-Mod-Paket enthalten, also habe ich mir die Toolchain gebaut.
Dann konnte ich mein C-File ohne Probleme kompilieren und, oh Wunder, es laeuft auf der Fritzbox.

Aber ohne eure Hilfe haette ich den Pfad und die Parameter fuer den GCC nie gefunden.

tschues

chriwi
 
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.