.titleBar { margin-bottom: 5px!important; }

Wie kompilieren?

Dieses Thema im Forum "FRITZ!Box Fon: Modifikationen" wurde erstellt von Maruu, 3 Nov. 2004.

  1. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo!

    Naja hab jetzt ein bissle gesucht und herausgefunden das die FBF auf BusyBoy läuft und hab mich auch mal ein bissle per Telnet drauf umgeschaut.
    Hab dann versucht mal von nem X86er PC ein kompiliertes Programm zu nehmen macht die Box aber nicht mit. Nun meine Frage, wie kann ich ein Programm von dem ich die Sourcen hab für die FBF kompilieren?? Gibts da ne Anleitung???
    Welche Dateien brauch ich alle??

    MFG

    Maruu
     
  2. rajo

    rajo Admin-Team

    Registriert seit:
    31 März 2004
    Beiträge:
    1,958
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    nunja, die Box hat eine andere Architektur als dein PC -- insofern musst Du Cross-compilen. IIRC ist das MIPS.

    D.h. du benötigst eine komplette Umgebung für diese Architektur.

    Am einfachsten ist es glaube ich wenn Du wartest bis AVM die Sourcen (evtl. sogar mit ein paar Hinweisen) rausgerückt hat (siehe http://www.ip-phone-forum.de/forum/viewtopic.php?t=6465&highlight=) und dann kannst Du loslegen.
     
  3. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Jap den Beitrag hab ich schon gelesen. Hab auch parallell in linuxforen.de gepostet anscheinend kann der gcc auch für andere Architekturen Kompilieren nur komm ich da nicht weiter da muss ich erst noch ein bisschen suchen, kenn mich da leider auch ned so aus.

    Sonst weiß niemand was oder??

    MFG

    Maruu

    PS: Seh ich das Richtig das BusyBox nur sozusagen eine große Datei is mit vielen Befehlen drin??? Und AVM kompiliert die halt mit einigen Befehlen die halt gebraucht werden???
     
  4. Kermit

    Kermit Neuer User

    Registriert seit:
    24 Juli 2004
    Beiträge:
    170
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Beruf:
    Berufskraftfahrer für Porsche AG
    Jou, wäre das selbe, als wolle mann ein DBox2 Image (Linux CVS) erstellen. ;-)
     
  5. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Hi, ich hab das schon mal hier irgendwo geschrieben...

    Crosscompile:
    1. Auf http://www.uclibc.org/cvs_anon.html per cvs toolchain auschecken...
    2. Ich hab's mit dem Verzeichnis gcc-3.3.x probiert. Im Makefile die Architektur auf mipsel (el=little endian) setzen.
    3. make eintippen, die benötigten Dateien werden runtergeladen und es dauert dann etwas...
    4. Die benötigten Dateien (mipsel-linux-gcc/strip usw.) sind dann im toolchain-mipsel Verzeichnis.
    5. Keine Ahnung wie das jetzt weitergehen soll, weil "make install" is nicht. In den Pfad mit aufnehmen???
    6. Busybox sourcen runterladen und entpacken: http://busybox.net/downloads/busybox-1.00.tar.bz2
    7. make menuconfig, unter "Build Options" Cross Compiler einstellen mit Prefix (bei mir mipsel-linux-) und auswählen was man haben will.
    8. make eingeben und abwarten
    9. nun kann man die busybox zum testen auf die fritzbox kopieren (tftp).
    10. die Befehle können über "./busybox befehl" aufgerufen werden.
     
  6. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Re

    aha, mhhm ersetze ich dan damit die auf dem Router vorhandene BusyBox datei oder mach ich einfach ne zweite???
    Bzw ist es nicht möglich nur ein Programm zu kompilieren und die BusyBox wegzulassen also z.B. nen kleinen FTP server oder so??

    MFG

    Maruu
     
  7. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    1. Klar geht das. War nur als Test gedacht, dass du siehst, ob dein Compiler funktioniert...
    2. Du kannst die busybox nicht per tftp ersetzen, da sie ja im squashfs ist. Aber du kannst deine nach /var/tmp kopieren und ausprobieren...

    MfG Oliver
     
  8. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ahhh sehr gut, naja dann werd ich das heute Abend oder morgen früh mal auf meinem VMWare ausprobieren und dann fängt das ganze erst richtig an Spass zu machen. Noch was kann ich dann ganz normale Sourcen übersetzen oder müssen die die uClibc verwenden?? Also könnte ich z.B. nen Apache übersetzen???

    MFG

    Maruu
     
  9. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Soweit ich das sehe, benutzt der compiler die libs mit denen er erstellt wurde. Wenn ich z.B. die busybox mit dem normalen glibc compiler erstelle, dann ist die 3MB groß (-static) und mit dem mipsel-linux- 700kb...
     
  10. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Mhhm ok ich werd das mal ausprobieren ob das dann kompatibel ist und ob er alle Funktionen in den Libs hat die man normalerweise braucht.
    ich meld mich wieder.

    MFG

    Maruu
     
  11. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Re

    ähh kurze frage noch der fragt beim erstellen von mipsl (also in deiner Anleitung beim 3. Schritt) einige Sachen welche Architektur (Mip1, Mips2, usw) hast du da einfach immer Enter gedrückt???

    MFG

    Maruu
     
  12. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Re

    OK egal ich hab jetzt alles mit Enter bestätigt. nachdem er endlich fertig war hab ich ein simples Hallo Welt programmiert, übersetzt undes funktioniert juhuuuuuuuu!
    Muss nun leider weg aber ich werd jetzt dann versuchen sachen zu portieren. Wenn ihr wünsche habt was auf die Box soll, dann sagts ich werds probieren.

    MFG

    Maruu
     
  13. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Re

    Hi!

    So noch ne Frage zum kompilieren??
    Ist es auch möglich einen Kompiler für den Router zu Kompilieren das ich also nen gcc auf der Fritz!Box hab der programme für die Fritz!Box kompilieren kann???


    MFG


    Maruu
     
  14. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Da mußt du wohl eine toolchain crosscompilieren, das hat bei mir nicht funktioniert. Der Speicher der Box ist wahrscheinlich auch etwas klein dafür. Aber von Montavista gibt`s anscheinend so was. Da ich aber keine serielle Konsole habe, konnte ich das leider nicht ausprobieren...
     
  15. Maruu

    Maruu Neuer User

    Registriert seit:
    21 Apr. 2004
    Beiträge:
    72
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    jo bei mir hats auch nciht funktioniert. Ich hab bis jetzt erst nen kleinen Webserver compiliert bekommen.
    Bin noch auf der Suche nach nem kleinen FTP Server und nem Kompiler like gcc oder perl oder ähnliches aber des bekomm ich alles ned kompiliert. Da mein Webserver CGI hat währe das echt praktisch aber naja was solls.
    Das mit Montavista was soll das sein, ein Kompiler??

    MFG

    Maruu
     
  16. Feldprediger

    Feldprediger Neuer User

    Registriert seit:
    11 Jan. 2005
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hallo, hat einer von euch schon einen telnet client kompieliert für die Box?
    Wenn ja wär das total klasse, ich würde nämlich gerne mal auf "telefon" (port 1011) zugreifen, aber das geht ja nur vom localhost...
    Grüße,
    Stephan

    PS: Hier gibts den Source für den Busybox Telnetclient:
    http://www.busybox.net/cgi-bin/cvsweb/busybox/networking/telnet.c?rev=1.44&view=log
    Leider habe ich nicht viel Ahnung vom kompilieren für Busybox :cry:
     
  17. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Wenn du den Telefon killst und dann neustartest kannst du auch vom Rechner drauf zugreifen... (killall telefon, telefon)

    MfG Oliver
     
  18. Feldprediger

    Feldprediger Neuer User

    Registriert seit:
    11 Jan. 2005
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ah ja stimmt. das klappt.
    Trotzdem wäre ein telnet-client nicht schlecht. Auch zum E-Mails versenden...
    Grüße
     
  19. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    2
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Ich kann dir eine busybox mit telnet-client schicken?

    MfG Oliver
     
  20. Temp

    Temp Neuer User

    Registriert seit:
    2 Jan. 2005
    Beiträge:
    29
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    An vpn Servern hab ich interesse ;)

    Magst du mal probieren tinc zu kompilieren.
    Die FBF sollte tun/tap support bieten (hier mal gelesen) was es ermöglicht diese VPN solution zu benutzen.
    Wie es mit den libs aussieht kann ich net sagen, aber die ausführbare tincd ist 70 kb groß bei mir aufm linux server.
    Ka auf was für ne größe man mit der uclib kommt und mit den libs.

    Grüße Temp