Probleme beim Kompilieren

Post new topic   Reply to topic    DD-WRT Forum Index -> Atheros WiSOC basierende Hardware
Author Message
PsychoMantis
DD-WRT Novice


Joined: 04 Jun 2007
Posts: 9
Location: Germany, Ingolstadt

PostPosted: Wed Jun 06, 2007 19:09    Post subject: Probleme beim Kompilieren Reply with quote
Habe mal hier gelesen, dass man selber DD-WRT-Firmware aus dem Quellcode erstellen kann.
Ich wollte eh schon immer mal Linux installieren, also schnell mal die neuste Ubuntu-CD runtergeladen, installiert und erstmal
Code:
svn co svn://svn.dd-wrt.com/DD-WRT DD-WRT
versucht. Da kam zwar irgendso ein Fehler, aber nachdem ich mit "apt-get install" irgendwas mit svn-package installiert habe, konnte ich die paar Gigabytes runterladen.

Zuerst kam da irgendwas mit ncurses fehlt:
Code:
root@alexander-laptop:/media/disk/DD-WRT/src/router# make -f Makefile.ar531x
Makefile.ar531x:15: .config: No such file or directory
Illegal option -l
rules/bridge.mk:4: Warnung: Die Befehle für das Ziel »bridge« werden überschrieben
rules/bridge.mk:2: Warnung: Alte Befehle für das Ziel »bridge« werden ignoriert
rules/iptables.mk:35: Warnung: Die Befehle für das Ziel »iptables-clean« werden überschrieben
rules/iptables.mk:2: Warnung: Alte Befehle für das Ziel »iptables-clean« werden ignoriert
cp config/defconfig .config
make oldconfig
make[1]: Betrete Verzeichnis '/media/disk/DD-WRT/src/router'
rules/bridge.mk:4: Warnung: Die Befehle für das Ziel »bridge« werden überschrieben
rules/bridge.mk:2: Warnung: Alte Befehle für das Ziel »bridge« werden ignoriert
rules/iptables.mk:35: Warnung: Die Befehle für das Ziel »iptables-clean« werden überschrieben
rules/iptables.mk:2: Warnung: Alte Befehle für das Ziel »iptables-clean« werden ignoriert
make -C config
make[2]: Betrete Verzeichnis '/media/disk/DD-WRT/src/router/config'
/usr/bin/ld: crt1.o: No such file: No such file or directory
collect2: ld gab 1 als Ende-Status zurück
-e
>> Unable to find the Ncurses libraries.
>>
>> You must have Ncurses installed in order
>> to use 'make menuconfig'
>>
>> Maybe you want to try 'make config', which
>> doesn't depend on the Ncurses libraries.

make[2]: *** [ncurses] Fehler 1
make[2]: Verlasse Verzeichnis '/media/disk/DD-WRT/src/router/config'
make[1]: *** [oldconf] Fehler 2
make[1]: Verlasse Verzeichnis '/media/disk/DD-WRT/src/router'
make: *** [.config] Fehler 2
root@alexander-laptop:/media/disk/DD-WRT/src/router# apt-cache search ncurses


Dann habe ich mir mit "apt-get install evms-ncurses" da irgendwas installiert, was ich für richtig hielt.
Nun kommt folgender Fehler:
Code:
root@alexander-laptop:/media/disk/DD-WRT/src/router# make -f Makefile.ar531x
rules/bridge.mk:4: Warnung: Die Befehle für das Ziel »bridge« werden überschrieben
rules/bridge.mk:2: Warnung: Alte Befehle für das Ziel »bridge« werden ignoriert
rules/iptables.mk:35: Warnung: Die Befehle für das Ziel »iptables-clean« werden überschrieben
rules/iptables.mk:2: Warnung: Alte Befehle für das Ziel »iptables-clean« werden ignoriert
echo "#define BUILD_DATE \"06/06/07\"" > ../../opt/build.h
#umount /media/disk/DD-WRT/src/router/mipsel-uclibc/target
rm -rf /media/disk/DD-WRT/src/router/mipsel-uclibc/target
rm -rf /media/disk/DD-WRT/src/router/mipsel-uclibc/install
rm -rf /media/disk/DD-WRT/src/router/mipsel-uclibc/install
make -C matrixssl/src all
make[1]: Betrete Verzeichnis '/media/disk/DD-WRT/src/router/matrixssl/src'
mipsel-linux-uclibc-gcc -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time   -fPIC -DLINUX -I./ -I/media/disk/DD-WRT/src/include.v23   -c -o cipherSuite.o cipherSuite.c
make[1]: mipsel-linux-uclibc-gcc: Kommando nicht gefunden
make[1]: *** [cipherSuite.o] Fehler 127
make[1]: Verlasse Verzeichnis '/media/disk/DD-WRT/src/router/matrixssl/src'
make: *** [matrixssl] Fehler 2
root@alexander-laptop:/media/disk/DD-WRT/src/router# apt-cache search mipsel-linux
root@alexander-laptop:/media/disk/DD-WRT/src/router# apt-cache search mipsel
gcc-3.4 - The GNU C compiler
dietlibc - diet libc shared libraries - a libc optimized for small size
dietlibc-dev - diet libc - a libc optimized for small size
dietlibc-doc - diet libc documentation - a libc optimized for small size
g++-3.4 - The GNU C++ compiler
kernel-image-netbootable - net-bootable kernel for use with diskless systems
type-handling - dpkg architecture generation script


Und egal, wie oft ich da jetzt "make -f Makefile.ar531x" eingebe, kommt immer folgender Fehler:
Code:
root@alexander-laptop:/media/disk/DD-WRT/src/router# make -f Makefile.ar531x
rules/bridge.mk:4: Warnung: Die Befehle für das Ziel »bridge« werden überschrieben
rules/bridge.mk:2: Warnung: Alte Befehle für das Ziel »bridge« werden ignoriert
rules/iptables.mk:35: Warnung: Die Befehle für das Ziel »iptables-clean« werden überschrieben
rules/iptables.mk:2: Warnung: Alte Befehle für das Ziel »iptables-clean« werden ignoriert
echo "#define BUILD_DATE \"06/06/07\"" > ../../opt/build.h
#umount /media/disk/DD-WRT/src/router/mipsel-uclibc/target
rm -rf /media/disk/DD-WRT/src/router/mipsel-uclibc/target
rm -rf /media/disk/DD-WRT/src/router/mipsel-uclibc/install
rm -rf /media/disk/DD-WRT/src/router/mipsel-uclibc/install
make -C matrixssl/src all
make[1]: Betrete Verzeichnis '/media/disk/DD-WRT/src/router/matrixssl/src'
mipsel-linux-uclibc-gcc -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time   -fPIC -DLINUX -I./ -I/media/disk/DD-WRT/src/include.v23   -c -o cipherSuite.o cipherSuite.c
make[1]: mipsel-linux-uclibc-gcc: Kommando nicht gefunden
make[1]: *** [cipherSuite.o] Fehler 127
make[1]: Verlasse Verzeichnis '/media/disk/DD-WRT/src/router/matrixssl/src'
make: *** [matrixssl] Fehler 2
root@alexander-laptop:/media/disk/DD-WRT/src/router#


Hat jemand eine Idee was mir da noch fehlt?
Sponsor
confused_user
DD-WRT User


Joined: 17 Mar 2007
Posts: 347

PostPosted: Wed Jun 06, 2007 20:27    Post subject: Reply with quote
beim kompilieren von dd-wrt wirst du dir die zähne ausbeißen, besser du verwendest die zeit für etwas sinnvollerem. bei dem versuch dd-wrt zu kompilieren haben schon etliche andere das vor dir das handtuch geworfen.

dd-wrt ist nicht dafür gemacht, dass man es kompilieren kann. wenn du kompilieren willst verwende openwrt.
PsychoMantis
DD-WRT Novice


Joined: 04 Jun 2007
Posts: 9
Location: Germany, Ingolstadt

PostPosted: Wed Jun 06, 2007 20:55    Post subject: Reply with quote
confused_user wrote:
...dd-wrt ist nicht dafür gemacht, dass man es kompilieren kann...


Aber die anderen machen doch auch irgendwie aus den ganzen Quelltexten ein für ein bestimmtes Gerät funktionierendes Firmware-Image?!
trixor
DD-WRT Novice


Joined: 01 May 2007
Posts: 8

PostPosted: Wed Jun 06, 2007 22:02    Post subject: Reply with quote
Dir fehlt der passende Compiler:
Quote:
make[1]: mipsel-linux-uclibc-gcc: Kommando nicht gefunden

Keine Ahnung, ob die uClibc Toolchain wie bei Openwrt mit den SVN Quellen mitgeliefert wird.

EDIT
mipsl uclibc toolchains muss gesondert installiert werden alles weitere gut erklärt im WIKI
H I E R
PsychoMantis
DD-WRT Novice


Joined: 04 Jun 2007
Posts: 9
Location: Germany, Ingolstadt

PostPosted: Thu Jun 07, 2007 9:25    Post subject: Reply with quote
Also
Code:
apt-cache search uclibc
hat
Code:
libuclibc-dev - A small implementation of the C library
libuclibc0 - A small implementation of the C library
uclibc-toolchain - A compiler wrapper for uClibc
rausgespuckt und ich habe die 3 Packages dann auch installiert. Aber es kommt der selbe Fehler.
Ich versuche jetzt mal die aktuellen Toolchains runterzuladen.


Last edited by PsychoMantis on Thu Jun 07, 2007 9:52; edited 2 times in total
dadude
DD-WRT Novice


Joined: 16 Mar 2007
Posts: 5

PostPosted: Thu Jun 07, 2007 9:43    Post subject: Reply with quote
Es werden zwei toolchains benötigt, zusätzlich müssen die PATH Variablen auch entsprechend gesetzt werden (s. Link zum Wiki in vorheriger Antwort von trixor).
PsychoMantis
DD-WRT Novice


Joined: 04 Jun 2007
Posts: 9
Location: Germany, Ingolstadt

PostPosted: Thu Jun 07, 2007 9:52    Post subject: Reply with quote
Habe zwar die aktuellen Toolchains jetzt runtergeladen und die im Rootverzeichnis von dem Laufwerk entpackt, wo auch der DD-WRT-Ordner ist (da stand ja "Unpack the toolchains wherever you desire"), aber irgendwie komme ich nicht weiter.

EDIT: Vor allem das "zusätzlich müssen die PATH Variablen auch entsprechend gesetzt werden" checke ich einfach nicht.
dadude
DD-WRT Novice


Joined: 16 Mar 2007
Posts: 5

PostPosted: Thu Jun 07, 2007 12:24    Post subject: Reply with quote
Bist Du denn nach der Anleitung vorgegangen?
Quote:

To build DD-WRT you simply need to:

0. Run ready_ddwrt.sh and ready_ddwrt_root.sh (the scripts are below).
1. Add the 4.1.0 toolchains bin folder to your path environment variable. i.e.
PATH=$PATH:/home/db90h/toolchains/4.1.0-uclibc/bin



Nachdem man die Scripte ready_ddwrt.sh und ready_ddwrt_root.sh für sein System entsprechend angepasst und ausgeführt hat:
Code:

PATH=$PATH:/????/????/toolchains/4.1.0-uclibc/bin

in die Shell eingeben. ???? durch eigene Pfadangaben ersetzen!
Display posts from previous:    Page 1 of 1
Post new topic   Reply to topic    DD-WRT Forum Index -> Atheros WiSOC basierende Hardware All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum