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

Bftpd 1.6 compilieren

Dieses Thema im Forum "Freetz" wurde erstellt von buergernb, 9 Jan. 2007.

  1. buergernb

    buergernb Neuer User

    Registriert seit:
    21 Feb. 2006
    Beiträge:
    116
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #1 buergernb, 9 Jan. 2007
    Zuletzt bearbeitet: 9 Jan. 2007
    Hallo,

    wollte heute mal aus Neugier selbst ein Programm für Fritz!Box compilieren. Da es eine neuere Version von Bftpd gibt, war ist diese mein Opfer. ;)
    Für das Erstellen der neuren FW+DSMOD ist ja ein precompiled nötig, als existiert die toolchain schon. Den Compiler-Pfad habe ich in der PATH-Umgebungsvariable angepasst. Hab mir unter der bftpd homepage den sourcecode besorgt, entpackt und dann im Verzeichnis
    Code:
    ./configure --build=i386-linux-gnu --target=mipsel-linux --host=mipsel-linux
    aus dem wiki ausgeführt (BTW: Kann es sein, dass dort das Label für diesen Eintrag fehlt? In der übergeordneten Seite wird dieser Punkt nicht angezeigt. Mußte etwas suchen.). Die Konsole gibt dann das aus:
    Code:
    nils@Bert:~/sources/bftpd-1.6$ ./configure --build=i386-linux-gnu --target=mipsel-linux --host=mipsel-linux
    loading cache ./config.cache
    checking for gcc... (cached) gcc
    checking whether the C compiler (gcc  ) works... yes
    checking whether the C compiler (gcc  ) is a cross-compiler... no
    checking whether we are using GNU C... (cached) yes
    checking whether gcc accepts -g... (cached) yes
    checking how to run the C preprocessor... (cached) gcc -E
    checking for AIX... no
    checking for a BSD compatible install... (cached) /usr/bin/install -c
    checking for getusershell in -lc... (cached) yes
    checking for inet_ntoa in -lc... (cached) yes
    checking for socket in -lsocket... (cached) no
    checking for connect in -lsocket... (cached) no
    checking for crypt in -lcrypt... (cached) yes
    checking for dirent.h that defines DIR... (cached) yes
    checking for opendir in -ldir... (cached) no
    checking for paths.h... (cached) yes
    checking for netinet/in.h... (cached) yes
    checking for sys/time.h... (cached) yes
    checking for time.h... (cached) yes
    checking for sys/types.h... (cached) yes
    checking for sys/stat.h... (cached) yes
    checking for sys/socket.h... (cached) yes
    checking for asm/socket.h... (cached) yes
    checking for wait.h... (cached) yes
    checking for sys/wait.h... (cached) yes
    checking for shadow.h... (cached) yes
    checking for arpa/inet.h... (cached) yes
    checking for syslog.h... (cached) yes
    checking for crypt.h... (cached) yes
    checking for utmp.h... (cached) yes
    checking for sys/sendfile.h... (cached) yes
    checking whether to enable pam... no
    checking whether to enable libz... no
    checking whether to enable debug... no
    creating ./config.status
    creating Makefile
    creating config.h
    config.h is unchanged
    
    Wenn das so korrekt ist: Was muß ich nun tun? Ein make scheint nicht den erhofften Erfolg zu bringen. :confused:
    Wenn ich es ausführe erstellte mir der System einige '.o'-Dateien (intermediate files).
    Ich weiß, dass ich irgendwie ein Verzeichnis root brauche, in dem das Programm dann liegt, sonst kann ich es nicht als addon einbinden. Wie mache ich das?

    Nils

    Achso: Ich nutze Ubuntu 6.10.

    EDIT:
    Hab die Verlinkung des Beitrags "Eigene Programme kompilieren" schon gesetzt.
     
  2. supamicha

    supamicha Mitglied

    Registriert seit:
    3 Dez. 2004
    Beiträge:
    567
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
  3. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Am einfachsten änderst du in make/bftpd/bftpd.make die Version. Dann nimmst du das Package aus dem dl/-Verzeichnis und entpackst es.
    Jetzt bennenst du das Verzeichnis aus dem Package in bftpd-1.6 um und packst es mit "tar cjf bftpd-1.6-dsmod-0.5.tar.bz2 bftpd-1.6/" wieder ein. Das Archiv kopierst du nach dl/. Jetzt noch ein "make bftpd-precompiled" und wenn du Glück hast läuft alles ohne Fehler durch.

    MfG Oliver
     
  4. supamicha

    supamicha Mitglied

    Registriert seit:
    3 Dez. 2004
    Beiträge:
    567
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    läuft ohne fehler so durch. hab ich auch so gemacht.
     
  5. buergernb

    buergernb Neuer User

    Registriert seit:
    21 Feb. 2006
    Beiträge:
    116
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #5 buergernb, 10 Jan. 2007
    Zuletzt bearbeitet: 10 Jan. 2007
    Bei mir gibt es ein Fehler... :-(

    Hi olistudent, hi supermicha,

    1.
    Okay, hab ich in make/bftpd/bftpd.mk auf "1.6" gesetzt.
    2.
    Jepp.
    3.
    Ja, auch das ist erledigt.
    4.
    Das kann ich schon richtig super. :p
    5.
    Hab ich scheinbar nicht.:(
    Code:
    tar: dl/bftpd-1.6-dsmod-0.5-with-zlib.tar.bz2: Kann open nicht ausführen.: No such file or directory
    tar: Nicht behebbarer Fehler: Programmabbruch.
    tar: Child returned status 2
    tar: Fehler beim Beenden, verursacht durch vorhergehende Fehler.
    make: *** [packages/.bftpd-zlib-1.6] Fehler 2
    
    Nils

    EDIT:

    Ah, ich weiß woran es liegt. Der von dir (olistudent) beschriebene Weg ist bftpd ohne With on-the-fly compression. Wenn ich die aber in make menuconfig mit aktiviert habe, brauche ich irgendwelche zlibs . :)
    Hab jetzt also den fertigen Patch bftpd-1.6-dsmod-0.5-with-zlib.tar.bz2 von supermicha genommen und siehe da: ES GEHT!!! ;)

    Danke an euch beide,
    Nils
     
  6. wonderdoc

    wonderdoc Mitglied

    Registriert seit:
    16 Aug. 2006
    Beiträge:
    214
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    @buergernb

    Hattest du das Paket mit oder ohne zlib bearbeitet?
    Lt Punkt 3 hast du es mit Namen bftpd-1.6-dsmod-0.5.tar.bz2 gepackt.
    Gesucht wird aber nach dl/bftpd-1.6-dsmod-0.5-with-zlib.tar.bz2

    Wenn du das Paket mit zlib bearbeitet hast, dann benenne die Datei einfach um.

    mfg
    Wonderdoc
     
  7. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Hm, dann ist wohl irgendwas beim einpacken schief gelaufen. Du kannst ja mal mit Michas Package verlgleichen... (Link)

    MfG Oliver
     
  8. buergernb

    buergernb Neuer User

    Registriert seit:
    21 Feb. 2006
    Beiträge:
    116
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ui Jungs,

    ihr seid aber schnell. Hab grad mein EDIT in meinem obigen Artikel fertig gestellt. Aber noch mal Danke.

    Nils