Ergebnis 1 bis 13 von 13

Thema: OTR Tool für FB 7330 unter Freetz kompilieren

  1. #1
    IPPF-Einsteiger
    Registriert seit
    03.05.2012
    Beiträge
    19

    OTR Tool für FB 7330 unter Freetz kompilieren

    Ich versuche nun das OTR Tool für meine Fritzbox zu kompilieren und komme nicht weiter. Ich nutze die Freetz Umgebung unter Virtual Box und die Toolchain ist vorhanden. Die libmcrypt bzw. mycrypt sowie libcurl sind installiert.

    Beim Kompilieren kommt es zu folgender Meldung:

    Code:
    freetz@freetz-linux:/$ sudo /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/mips-linux-gcc -o otrtool /home/freetz/otrtool/src/main.c
    /home/freetz/otrtool/src/main.c:13:20: fatal error: mcrypt.h: No such file or directory
    compilation terminated.
    Die Header-Datei (mcrypt.h) ist an den folgenden Stellen vorhanden.

    Code:
    freetz@freetz-linux:/$ sudo find /. -name mcrypt.h
    /./home/freetz/otrtool/mcrypt.h
    /./home/freetz/otrtool/src/mcrypt.h
    /./usr/include/mcrypt.h
    /./usr/include/mutils/mcrypt.h
    Hat jemand ein Tipp für mich?

    PS: Das Kompilieren direkt auf der Freetz-Umgebung mittels "make" funktioniert und ich bekomme die Binary für mein i686 System.

  2. #2
    IPPF-Fünftausend-VIP Avatar von sf3978
    Registriert seit
    02.12.2007
    Beiträge
    6.397
    Zitat Zitat von ip_001 Beitrag anzeigen
    Die libmcrypt bzw. mycrypt sowie libcurl sind installiert.
    otrtool ist auch zur Laufzeit abhängig von libmcrypt. Hast Du libmcrypt für die Box (d. h. als Freetz-Paket für mips und/oder mipsel)?
    Code:
    # ldd ./otrtool
            linux-vdso.so.1 =>  (0x00007fffe4bee000)
            libmcrypt.so.4 => /usr/lib64/libmcrypt.so.4 (0x00007f1a91232000)
            libcurl.so.4 => /usr/lib64/libcurl.so.4 (0x00007f1a90fdc000)
            libc.so.6 => /lib64/libc.so.6 (0x00007f1a90c7c000)
            libidn.so.11 => /usr/lib64/libidn.so.11 (0x00007f1a90a49000)
            libldap-2.4.so.2 => /usr/lib64/libldap-2.4.so.2 (0x00007f1a90802000)
            librt.so.1 => /lib64/librt.so.1 (0x00007f1a905f9000)
            libgssapi_krb5.so.2 => /usr/lib64/libgssapi_krb5.so.2 (0x00007f1a903c3000)
            libssl.so.1.0.0 => /lib64/libssl.so.1.0.0 (0x00007f1a90167000)
            libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007f1a8fdb8000)
            libz.so.1 => /lib64/libz.so.1 (0x00007f1a8fba2000)
            libssh2.so.1 => /usr/lib64/libssh2.so.1 (0x00007f1a8f97b000)
            /lib64/ld-linux-x86-64.so.2 (0x00007f1a9146b000)
            liblber-2.4.so.2 => /usr/lib64/liblber-2.4.so.2 (0x00007f1a8f76c000)                                                                                 
            libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f1a8f555000)                                                                                         
            libsasl2.so.2 => /usr/lib64/libsasl2.so.2 (0x00007f1a8f33a000)                                                                                       
            libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f1a8f11d000)                                                                                       
            libkrb5.so.3 => /usr/lib64/libkrb5.so.3 (0x00007f1a8ee52000)                                                                                         
            libk5crypto.so.3 => /usr/lib64/libk5crypto.so.3 (0x00007f1a8ec2b000)                                                                                 
            libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f1a8ea27000)                                                                                       
            libkrb5support.so.0 => /usr/lib64/libkrb5support.so.0 (0x00007f1a8e81e000)                                                                           
            libdl.so.2 => /lib64/libdl.so.2 (0x00007f1a8e61a000)                                                                                                 
            libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f1a8e417000)

  3. #3
    IPPF-Urgestein
    Registriert seit
    22.04.2007
    Beiträge
    10.995
    Was bringt Dich dazu, den Compiler mit sudo aufzurufen?

    Vermutlich gibt es ein Makefile dazu, also verwende es auch. Wenn nicht, schau, dass Du die passenden Optionen von Hand übergibst.

  4. #4
    IPPF-Fünftausend-VIP Avatar von sf3978
    Registriert seit
    02.12.2007
    Beiträge
    6.397
    Zitat Zitat von ip_001 Beitrag anzeigen
    Beim Kompilieren kommt es zu folgender Meldung:
    Code:
    freetz@freetz-linux:/$ sudo /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/mips-linux-gcc -o otrtool /home/freetz/otrtool/src/main.c
    /home/freetz/otrtool/src/main.c:13:20: fatal error: mcrypt.h: No such file or directory
    compilation terminated.
    Die Header-Datei (mcrypt.h) ist an den folgenden Stellen vorhanden.
    Versuch es mal so:
    Code:
    /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/mips-linux-gcc -v -I/usr/include -o otrtool /home/freetz/otrtool/src/main.c -lcurl -lmcrypt
    und poste die Ausgabe.

  5. #5
    IPPF-Einsteiger
    Registriert seit
    03.05.2012
    Beiträge
    19
    Zitat Zitat von sf3978 Beitrag anzeigen
    otrtool ist auch zur Laufzeit abhängig von libmcrypt. Hast Du libmcrypt für die Box (d. h. als Freetz-Paket für mips und/oder mipsel)?
    Ich glaube ich muss dazu sagen, dass ich es statisch kompilieren wollte? Der Parameter -static müsste demnach noch angefügt werden.

    Zitat Zitat von RalfFriedl Beitrag anzeigen
    Was bringt Dich dazu, den Compiler mit sudo aufzurufen?
    Hast Recht, das ist Quatsch.
    Zitat Zitat von RalfFriedl Beitrag anzeigen
    Vermutlich gibt es ein Makefile dazu, also verwende es auch. Wenn nicht, schau, dass Du die passenden Optionen von Hand übergibst.
    Ich muss gestehen, dass meine Kenntnisse dazu beschränkt sind. Danke für den Tipp. sf3978 hat mich zum Glück dabei unterstützt.

    Zitat Zitat von sf3978 Beitrag anzeigen
    Versuch es mal so:
    Code:
    /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/mips-linux-gcc -v -I/usr/include -o otrtool /home/freetz/otrtool/src/main.c -lcurl -lmcrypt
    und poste die Ausgabe.
    Endlich einen kleinen Schritt weiter. Danke! Hier die Ausgabe erweitert um den Parameter -static, bei der ich noch mal Unterstützung benötige:
    Code:
    freetz@freetz-linux:~/otrtool$ /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/mips-linux-gcc -v -I/usr/include -o /home/freetz/otrtool/otrtool /home/freetz/otrtool/src/main.c -lcurl -lmcrypt -static
    Using built-in specs.
    COLLECT_GCC=/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/mips-linux-gcc
    COLLECT_LTO_WRAPPER=/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../libexec/gcc/mips-linux-uclibc/4.6.3/lto-wrapper
    Target: mips-linux-uclibc
    Configured with: /home/gene/freetz/freetz-trunk-dev/source/toolchain-mips_gcc-4.6.3_uClibc-0.9.32.1/gcc-4.6.3/configure --prefix=/home/gene/freetz/freetz-trunk-dev/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc --with-sysroot=/home/gene/freetz/freetz-trunk-dev/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/usr/ --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --target=mips-linux-uclibc --enable-languages=c,c++ --enable-shared --enable-threads --with-gmp=/home/gene/freetz/freetz-trunk-dev/tools/build --with-mpfr=/home/gene/freetz/freetz-trunk-dev/tools/build --with-mpc=/home/gene/freetz/freetz-trunk-dev/tools/build --with-gnu-ld --disable-__cxa_atexit --disable-libgomp --disable-libmudflap --disable-multilib --disable-tls --disable-fixed-point --with-float=soft --enable-cxx-flags=-msoft-float --disable-libssp --with-march=24kc --disable-nls --with-mips-plt --disable-decimal-float
    Thread model: posix
    gcc version 4.6.3 (GCC)
    COLLECT_GCC_OPTIONS='-v' '-I' '/usr/include' '-o' '/home/freetz/otrtool/otrtool' '-static' '-msoft-float' '-mllsc' '-mplt' '-mno-synci' '-mno-shared'
     /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../libexec/gcc/mips-linux-uclibc/4.6.3/cc1 -quiet -v -I /usr/include -iprefix /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/ -isysroot /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../usr/ /home/freetz/otrtool/src/main.c -quiet -dumpbase main.c -msoft-float -mllsc -mplt -mno-synci -mno-shared -auxbase main -version -o /tmp/ccufT58s.s
    GNU C (GCC) version 4.6.3 (mips-linux-uclibc)
            compiled by GNU C version 4.6.1, GMP version 5.0.5, MPFR version 3.1.0-p10, MPC version 0.9
    GGC heuristics: --param ggc-min-expand=88 --param ggc-min-heapsize=109751
    ignoring duplicate directory "/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/../../lib/gcc/mips-linux-uclibc/4.6.3/include"
    ignoring nonexistent directory "/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../usr//usr/local/include"
    ignoring duplicate directory "/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/../../lib/gcc/mips-linux-uclibc/4.6.3/include-fixed"
    ignoring duplicate directory "/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/../../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/include"
    ignoring duplicate directory "/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../usr//usr/include"
    #include "..." search starts here:
    #include <...> search starts here:
     /usr/include
     /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/include
     /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/include-fixed
     /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/include
    End of search list.
    GNU C (GCC) version 4.6.3 (mips-linux-uclibc)
            compiled by GNU C version 4.6.1, GMP version 5.0.5, MPFR version 3.1.0-p10, MPC version 0.9
    GGC heuristics: --param ggc-min-expand=88 --param ggc-min-heapsize=109751
    Compiler executable checksum: d88b26cb80fb05c41fb012aeeba078cc
    COLLECT_GCC_OPTIONS='-v' '-I' '/usr/include' '-o' '/home/freetz/otrtool/otrtool' '-static' '-msoft-float' '-mllsc' '-mplt' '-mno-synci' '-mno-shared'
     /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/bin/as -EB -no-mdebug -mabi=32 -mno-shared -call_nonpic -o /tmp/ccjKdYvd.o /tmp/ccufT58s.s
    COMPILER_PATH=/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../libexec/gcc/mips-linux-uclibc/4.6.3/:/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../libexec/gcc/:/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/bin/
    LIBRARY_PATH=/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/:/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/:/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/lib/:/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../usr//lib/:/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../usr//usr/lib/
    COLLECT_GCC_OPTIONS='-v' '-I' '/usr/include' '-o' '/home/freetz/otrtool/otrtool' '-static' '-msoft-float' '-mllsc' '-mplt' '-mno-synci' '-mno-shared'
     /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../libexec/gcc/mips-linux-uclibc/4.6.3/collect2 --sysroot=/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../usr/ -EB -static -o /home/freetz/otrtool/otrtool /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/lib/crt1.o /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/lib/crti.o /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/crtbeginT.o -L/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3 -L/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc -L/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/lib -L/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../usr//lib -L/home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../usr//usr/lib /tmp/ccjKdYvd.o -lcurl -lmcrypt --start-group -lgcc -lgcc_eh -lc --end-group /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/crtend.o /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/lib/crtn.o
    /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/bin/ld: cannot find -lcurl
    /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/bin/ld: cannot find -lmcrypt
    collect2: ld returned 1 exit status
    freetz@freetz-linux:~/otrtool$

  6. #6
    IPPF-Urgestein
    Registriert seit
    22.04.2007
    Beiträge
    10.995
    Zitat Zitat von sf3978 Beitrag anzeigen
    Versuch es mal so:
    Code:
    /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/mips-linux-gcc -v -I/usr/include -o otrtool /home/freetz/otrtool/src/main.c -lcurl -lmcrypt
    Damit wird die Datei vom Host verwendet. Wenn man Glück hat, funktioniert es damit. Wenn man Pech hat, gibt es Fehler zur Laufzeit, deren Ursache nicht offensichtlich ist.

  7. #7
    IPPF-Fünftausend-VIP Avatar von sf3978
    Registriert seit
    02.12.2007
    Beiträge
    6.397
    Zitat Zitat von RalfFriedl Beitrag anzeigen
    Damit wird die Datei vom Host verwendet.
    Nach meinem Kenntnisstand, gibt es z. Zt. in Freetz keine "mcrypt.h" bzw. keine "libmcrypt" (... siehe mein Beitrag #2). Ist/war nur als Beispiel gedacht, wie man den Pfad für header-Dateien, mitteilen kann. Wenn in Freetz vorhanden bzw. für die anderen erforderlichen Header-Dateien (... curl.h, etc.), kann man z. B.:
    Code:
    -I/< ... >/freetz-devel/toolchain/build/mipsel_gcc-4.6.3_uClibc-0.9.##.#/mipsel-linux-uclibc/include
    benutzen.

  8. #8
    IPPF-Fünftausend-VIP Avatar von sf3978
    Registriert seit
    02.12.2007
    Beiträge
    6.397
    Zitat Zitat von ip_001 Beitrag anzeigen
    Code:
    /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/bin/ld: cannot find -lcurl
    /home/freetz/freetz-devel/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin/../lib/gcc/mips-linux-uclibc/4.6.3/../../../../mips-linux-uclibc/bin/ld: cannot find -lmcrypt
    collect2: ld returned 1 exit status
    freetz@freetz-linux:~/otrtool$
    Wo die libraries fürs Linken gefunden werden sollen/können, kannst Du z. B. mit:
    Code:
    -L/< ... >/freetz-devel/toolchain/build/mipsel_gcc-4.6.3_uClibc-0.9.##.#/mipsel-linux-uclibc/lib
    mitteilen

  9. #9
    IPPF-Urgestein
    Registriert seit
    22.04.2007
    Beiträge
    10.995
    Zitat Zitat von sf3978 Beitrag anzeigen
    Nach meinem Kenntnisstand, gibt es z. Zt. in Freetz keine "mcrypt.h" bzw. keine "libmcrypt"
    Laut dem find in Beitrag 1 gibt es mcrpyt.h im Programm Verzeichnis, sogar gleich zweimal.
    Wenn keine passende Library vorhanden ist, bringt der Header allein auch nicht viel.

  10. #10
    IPPF-Fünftausend-VIP Avatar von sf3978
    Registriert seit
    02.12.2007
    Beiträge
    6.397
    Zitat Zitat von RalfFriedl Beitrag anzeigen
    Laut dem find in Beitrag 1 gibt es mcrpyt.h im Programm Verzeichnis, sogar gleich zweimal.
    Das ist die "Datei vom Host", die nach dem Auschecken/Entpacken, vom TE in das Programm-Verzeichnis kopiert worden ist. Das Archiv mit dem source code von otrtool, beinhaltet diese Header-Datei nicht:
    Code:
    :~/pyropeter-otrtool-bb72ff0/src> ls -l
    -rw-r--r-- 1 xx users 24049 12. Jul 23:50 main.c
    -rw-r--r-- 1 xx users  8875 12. Jul 23:50 md5.c
    -rw-r--r-- 1 xx users  1504 12. Jul 23:50 md5.h
    Code:
    :~/pyropeter-otrtool-bb72ff0> ls -l
    drwxr-xr-x   2 xx users    80 12. Jul 23:50 doc
    -rw-r--r--   1 xx users  6880 12. Jul 23:50 LICENSE
    -rw-r--r--   1 xx users  1519 12. Jul 23:50 Makefile
    -rw-r--r--   1 xx users  1899 12. Jul 23:50 README
    drwxr-xr-x   2 xx users   168  12. Jul 23:50 src
    -rw-r--r--   1 xx users   541 12. Jul 23:50 TODO

  11. #11
    IPPF-Fünftausend-VIP Avatar von sf3978
    Registriert seit
    02.12.2007
    Beiträge
    6.397
    Zitat Zitat von ip_001 Beitrag anzeigen
    Hat jemand ein Tipp für mich?
    BTW: Wenn Du _nur_ (d. h. wenn keine andere Abhängigkeiten vorhanden) eine Header-Datei in das Programm-Verzeichnis kopieren willst/musst, dann kannst Du die include-Direktive in der source-code-Datei (hier main.c) ändern, damit diese Header-Datei auch im Programm-Verzeichnis gesucht und gefunden wird. D. h., aus #include <mcrypt.h> mach #include "mcrypt.h".

  12. #12
    IPPF-Fan
    Registriert seit
    08.04.2008
    Beiträge
    330
    Libmcrypt ist eine Voraussetzung für das otrtool. Du solltest es folglich vorher für die Box kompilieren.

    Da ip_001 statisch kompilieren will, habe ich die otrtool.mk von sf3978 um diese Option erweitert:
    Code:
    $(call PKG_INIT_BIN, 1.0.2)
    $(PKG)_SOURCE:=$(pkg)-$($(PKG)_VERSION).tar.gz
    $(PKG)_SOURCE_MD5:=3fa2e766b2e1e0a3207adae69b516e44
    $(PKG)_SITE:=http://github.com/pyropeter/otrtool/tarball/v$($(PKG)_VERSION)
    $(PKG)_BINARIES:=$(pkg)
    $(PKG)_BINARIES_BUILD_DIR:=$($(PKG)_BINARIES:%=$($(PKG)_DIR)/%)
    $(PKG)_BINARIES_TARGET_DIR:=$($(PKG)_BINARIES:%=$($(PKG)_DEST_DIR)/usr/bin/%)
    
    $(PKG)_DEPENDS_ON := curl libmcrypt
    
    $(PKG_SOURCE_DOWNLOAD)
    $(PKG_CONFIGURED_NOP)
    
    $(PKG)_CFLAGS = $(TARGET_CFLAGS) -DVERSION='\"v$(OTRTOOL_VERSION)\"'
    
    $(PKG)_LDFLAGS := -lmcrypt -lcurl
    
    ifeq ($(strip $(FREETZ_PACKAGE_OTRTOOL_STATIC)),y)
    $(PKG)_LDFLAGS += -static
    endif
    
    $($(PKG)_DIR)/.unpacked: $(DL_DIR)/$(OTRTOOL_SOURCE)
    	tar --strip-components 1 -C $(OTRTOOL_DIR) $(VERBOSE) -zxf $(DL_DIR)/$(OTRTOOL_SOURCE)
    	touch $@
    
    $($(PKG)_BINARIES_BUILD_DIR): $($(PKG)_DIR)/.configured
    	$(SUBMAKE) -C $(OTRTOOL_DIR) \
    		CC="$(TARGET_CC)" \
    		CFLAGS="$(OTRTOOL_CFLAGS)" \
    		LDFLAGS="$(OTRTOOL_LDFLAGS)"
    
    $($(PKG)_BINARIES_TARGET_DIR): $($(PKG)_DEST_DIR)/usr/bin/%: $($(PKG)_DIR)/%
    	$(INSTALL_BINARY_STRIP)
    
    $(pkg):
    
    $(pkg)-precompiled: $($(PKG)_BINARIES_TARGET_DIR)
    
    $(pkg)-clean:
    	-$(SUBMAKE) -C $(OTRTOOL_DIR) clean
    	$(RM) $(OTRTOOL_DIR)/.configured
    
    $(pkg)-uninstall:
    	$(RM) $(OTRTOOL_BINARIES_TARGET_DIR)
    
    $(PKG_FINISH)
    Angehängte Dateien Angehängte Dateien
    Geändert von roadman17 (10.08.2012 um 09:46 Uhr) Grund: otrtool.mk
    Fritz!Box 7270v1

  13. #13
    IPPF-Fünftausend-VIP Avatar von sf3978
    Registriert seit
    02.12.2007
    Beiträge
    6.397
    Zitat Zitat von roadman17 Beitrag anzeigen
    Libmcrypt ist eine Voraussetzung für das otrtool.
    Hier die otrtool.mk:
    Code:
    $(call PKG_INIT_BIN, 1.0.2)
    $(PKG)_SOURCE:=$(pkg)-$($(PKG)_VERSION).tar.gz
    #$(PKG)_SITE:=git@https://github.com/pyropeter/$(pkg).git
    
    $(PKG)_BINARIES:=$(pkg)
    $(PKG)_BINARIES_BUILD_DIR:=$($(PKG)_BINARIES:%=$($(PKG)_DIR)/%)
    $(PKG)_BINARIES_TARGET_DIR:=$($(PKG)_BINARIES:%=$($(PKG)_DEST_DIR)/usr/bin/%)
    
    $(PKG)_DEPENDS_ON := curl libmcrypt
    
    $(PKG_SOURCE_DOWNLOAD)
    $(PKG_UNPACKED)
    $(PKG_CONFIGURED_NOP)
    
    $($(PKG)_BINARIES_BUILD_DIR): $($(PKG)_DIR)/.configured
    	$(SUBMAKE) -C $(OTRTOOL_DIR) \
    		CC="$(TARGET_CC)" \
    		CFLAGS="$(TARGET_CFLAGS)"
    
    $($(PKG)_BINARIES_TARGET_DIR): $($(PKG)_DEST_DIR)/usr/bin/%: $($(PKG)_DIR)/%
    	$(INSTALL_BINARY_STRIP)
    
    $(pkg):
    
    $(pkg)-precompiled: $($(PKG)_BINARIES_TARGET_DIR)
    
    $(pkg)-clean:
    	-$(SUBMAKE) -C $(OTRTOOL_DIR) clean
    	$(RM) $(OTRTOOL_DIR)/.configured
    
    $(pkg)-uninstall:
    	$(RM) $(OTRTOOL_BINARIES_TARGET_DIR)
    
    $(PKG_FINISH)
    Code:
    ... /freetz-devel> file packages/target-mipsel_uClibc-0.9.32.1/otrtool-1.0.2/root/usr/bin/otrtool
    packages/target-mipsel_uClibc-0.9.32.1/otrtool-1.0.2/root/usr/bin/otrtool: ELF 32-bit LSB executable, MIPS, MIPS32 version 1 (SYSV), dynamically linked (uses shared libs), with unknown capability 0xf41 = 0x756e6700, with unknown capability 0x70100 = 0x3040000, stripped
    Code:
    root@fritz:/var/media/ftp/uStor02/test# ./readelf -d ./otrtool
    
    Dynamic section at offset 0x180 contains 33 entries:
      Tag        Type                         Name/Value
     0x00000001 (NEEDED)                     Shared library: [libmcrypt.so.4]
     0x00000001 (NEEDED)                     Shared library: [libcurl.so.4]
     0x00000001 (NEEDED)                     Shared library: [libgcc_s.so.1]
     0x00000001 (NEEDED)                     Shared library: [libc.so.0]
     0x0000000f (RPATH)                      Library rpath: [/usr/lib/freetz]

Ähnliche Themen

  1. [Frage] Freetz mit FB 7330
    Von thekillah im Forum Freetz
    Antworten: 16
    Letzter Beitrag: 24.05.2012, 23:32
  2. FHEM auf freetz 7330
    Von ostacp im Forum Freetz
    Antworten: 0
    Letzter Beitrag: 02.02.2012, 18:13
  3. Antworten: 9
    Letzter Beitrag: 05.05.2011, 08:08
  4. Fehler beim kompilieren von freetz unter Karmic Koala
    Von binford3000.de im Forum Freetz
    Antworten: 5
    Letzter Beitrag: 06.09.2009, 13:25
  5. Kompilieren des ds-mod unter Mac OS X
    Von maceis im Forum Freetz
    Antworten: 78
    Letzter Beitrag: 06.09.2007, 20:39

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •