CDK + Gycwin

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
mediom
Erleuchteter
Erleuchteter
Beiträge: 505
Registriert: Freitag 20. Juli 2001, 00:00

Beitrag von mediom »

Hallo,
ist nach euerer umstellung des cdk es das compilieren mit cygwin immer noch möglich?
wenn ja wie

thx
field
Senior Member
Beiträge: 288
Registriert: Freitag 20. Juli 2001, 00:00

Beitrag von field »

nein, zur Zeit nicht
mediom
Erleuchteter
Erleuchteter
Beiträge: 505
Registriert: Freitag 20. Juli 2001, 00:00

Beitrag von mediom »

schade ;(
aber der satz zur zeit nicht macht mir hofnung das es irgentwann wieder gehen wird <IMG SRC="/forum/images/smiles/icon_smile.gif"> <IMG SRC="/forum/images/smiles/icon_smile.gif">
field
Senior Member
Beiträge: 288
Registriert: Freitag 20. Juli 2001, 00:00

Beitrag von field »

<IMG SRC="/forum/images/smiles/icon_smile.gif">
Ich schätze so in 2-3 Monaten.
Einen Monat dauerts noch, bis das cdk unter Linux-Systemen (abgesehen von einigen ausgewählten) geht, und dann muss ich erst wieder die ganzen Linux-Bugs rauskriegen, damit das auch auf kompatiblen Platformen geht.
+tbn
Interessierter
Interessierter
Beiträge: 43
Registriert: Dienstag 11. Dezember 2001, 00:00

Beitrag von +tbn »

Hi,
habe ein wenig Vorarbeit mitgebracht.

rules-make-cygwin:

#
# core
#
glibc;2.2.3;glibc-2.2.3;glibc-2.2.3.tar.bz2:glibc-linuxthreads-2.2.3.tar.bz2:glibc.diff:cygwin/glibc.diff;extract:glibc-2.2.3.tar.bz2;dirextract:glibc-linuxthreads-2.2.3.tar.bz2;patch:glibc.diff;patch:cygwin/glibc.diff
bootstrap_gcc;3.0.3;gcc-3.0.3;gcc-core-3.0.3.tar.gz:gcc-core.diff;extract:gcc-core-3.0.3.tar.gz;patch:gcc-core.diff;patch:cygwin/gcc.diff
gcc;3.0.3;gcc-3.0.3;gcc-core-3.0.3.tar.gz:gcc-g++-3.0.3.tar.gz;extract:gcc-core-3.0.3.tar.gz;extract:gcc-g++-3.0.3.tar.gz;patch:cygwin/gcc.diff

#
# contrib libs
#
libfreetype;2.0.5;freetype-2.0.5;freetype-2.0.5.tar.bz2;extract:freetype-2.0.5.tar.bz2;patch:cygwin/freetype.diff
libqt;2.3.0;qt-2.3.0;qt-embedded-2.3.0.tar.gz:qte.diff;extract:qt-embedded-2.3.0.tar.gz;patch:qte.diff;patch:cygwin/qte.diff
libz;1.1.3;zlib-1.1.3;zlib.tar.gz:zlib.diff;extract:zlib.tar.gz;patch:zlib.diff;patch:cygwin/zlib.diff

Dann ein

./autogen.sh
./configure --prefix=/dbox2 --with-hostruleset=cygwin --with-cvsdir=$HOME/tuxbox-cvs

und die notwendigen Patches habe ich mal hier abgelegt:
http://tbn-world.tripod.com/files/tuxbox-cygwin.zip

viel Spaß
+tbn
obi
Senior Member
Beiträge: 1282
Registriert: Montag 12. November 2001, 00:00

Beitrag von obi »

das is ja mal was, dass jemand was unaufgefordert macht :)
super! hoffentlich kommen jetzt noch ein paar tester zusammen.
das file laesst sich nicht per klick runterladen, bin jetzt allerdings zu muede, um das komische lycos howto durchzulesen. wenn es dir keine muehe macht, kannst du es mir ja mailen, dann werd ich das an interessierte weiterleiten und nach einem test ins cvs stecken.

in diesem sinne
grus, obi
+tbn
Interessierter
Interessierter
Beiträge: 43
Registriert: Dienstag 11. Dezember 2001, 00:00

Beitrag von +tbn »

@obi:

hast eine Mail bekommen.

Zu Tripod:
Ich glaube, daß es an der Verlinkung liegt. Kopierst Du die URL und fügst die in ein leeres Browser-Fenster, dann geht es...
(ist irgendwie eine Policy von Tripod, keine verlinkten Downloads zuzulassen. *sigh*)

Gruß,
+tbn
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

@+tbn

Dank Deinem readme habe ich auch mal einen Einstieg gefunden ins compilieren. Und cygwin ist recht cool. Aber eins macht mich stutzig. Ich komme bis zu dem Punkt make XXX. Dann rattern da einige Outputs runter, dauert eine Weile und sind auch einige. Aber dann bleibt er plötzlich stehen und tut nix mehr. Ist das normal, wie lange dauert das?
Hab' natürlich vergessen an welcher Stelle er aufgehört hat Zeug auszugeben.

chk
+tbn
Interessierter
Interessierter
Beiträge: 43
Registriert: Dienstag 11. Dezember 2001, 00:00

Beitrag von +tbn »

Also es gibt zwei Möglichkeiten, wenn das "make xxx" aufhört:

a) es ist schlichtweg fertig
b) es gab einen Fehler, der zum Abbruch führt

Wes einige Stunden(!) "gerattert" hat, stehen die Chancen für "a)" gut. Ansonsten halt "b)"

Poste doch mal die letzten paar Zeilen der Ausgabe (ggf. auch per PM).

+tbn
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

Ja wie? Einige Stunden? So viel Gedult hatte ich dann nicht. Ich glaub' ich sollte auch meinen anderen Rechner dafür nehmen. Statt dem 400 PII den 1 Ghz Athlon.

Und da hätte ich mal ne Newbie Frage: Wie entwickelt man denn so was? Man kann ja nicht jedes mal, wenn man ein paar Zeilen geändert hat Stunden warten, bis man es testen kann?

Habe nur Erfahrung mit Skript/Interpreter Sprachen (Perl,PHP,JavaScript), da ich mich nur um Web Programmierung kümmere.

Aber würde auch gerne mal einen kleinen Einstieg finden. Kleinigkeiten im Source ändern ist ja nicht so schwer. z.B. Die Ausgabe des EPG ein wenig umzustellen.

Thanx. chk.
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

@+tbn

Hi
Hast Du das aktuelle CDK mit cygwin compilieren können? Wenn ja, kann ich noch mal Deine Patches haben. Thanx.

chk
+tbn
Interessierter
Interessierter
Beiträge: 43
Registriert: Dienstag 11. Dezember 2001, 00:00

Beitrag von +tbn »

Ja, hier in diesem Thread ist auch der Link zu den Patches. Sollte funktionieren.

+tbn
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

Ups. Da bin ich doch auf die Tripod Sperre reingefallen...
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

So habs grad probiert mit make .lcdmenu. Das läuft ne Weile mit vielen Warnings und am Ende kommt folgnder Fehler:

In file included from tm.h:7,
from ../../gcc-3.0.3/gcc/config/rs6000/xm-sysv4.h:35,
from tconfig.h:3,
from ../../gcc-3.0.3/gcc/libgcc2.c:36:
../../gcc-3.0.3/gcc/config/rs6000/linux.h:81:20: signal.h: No such file or direc
tory
../../gcc-3.0.3/gcc/config/rs6000/linux.h:82:26: sys/ucontext.h: No such file or
directory
make[4]: *** [libgcc/./_muldi3.o] Error 1
make[4]: Leaving directory `/home/Administrator/tuxbox-cvs/cdk/build/gcc'
make[3]: *** [stmp-multilib] Error 2
make[3]: Leaving directory `/home/Administrator/tuxbox-cvs/cdk/build/gcc'
make[2]: *** [all-gcc] Error 2
make[2]: Leaving directory `/home/Administrator/tuxbox-cvs/cdk/build'
make[1]: *** [bootstrap_gcc] Error 2
make[1]: Leaving directory `/home/Administrator/tuxbox-cvs/cdk'
make: *** [.glibc] Error 2

Was fehlt mir denn da?
Thanx chk
+tbn
Interessierter
Interessierter
Beiträge: 43
Registriert: Dienstag 11. Dezember 2001, 00:00

Beitrag von +tbn »

So wie es aussieht scheint das Patchen des gcc funktioniert zu haben. Leider findet er das include-Verzeichnis (linux) nicht.

Q1: Hast Du die angegebenen Tools (autoconf-2.52, automake-1.4-p5, libtool-1.4.2) installiert?

Q2: Welche Fehlermeldungen kommen *bevor* irgendetwas kompiliert wird?

Falls du schon selbst probiert hast, könnte es auch daran liegen, daß Links falsch gesetzt sind. In diesem Fall:
make distclean-local
rm -rf /dbox2/*

+tbn
T-Olli
Interessierter
Interessierter
Beiträge: 83
Registriert: Montag 22. Oktober 2001, 00:00

Beitrag von T-Olli »

@+tbn
Hast du das ganze CDK compiliert ?

Bei mir bricht er beim compilieren von ppcboot ab. Fehlermeldung, irgendwas mit Verzeichnis nicht gefunden oder so ähnlich.
Das reicht mir zwar (die Apps lassen sich ja compilieren) , aber wenn es bei dir weitergeht dann suche ich noch mal.
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

Schade klappt nicht. Ich habe es noch mal mit make .lcdmenu probiert, weil das doch am schnellsten gehen sollte oder?

Die Tools habe ich alle installiert über den tu-erlangen Server.

Wird bei make .lcdmenu auch das ppcboot mitcompiliert? Wenn ja, wie kann ich z.B. Neutrino oder Enigma alleine compilieren um es in einer YADD auszutauschen.

Hier noch mal die letzten Zeilen meiner Ausgabe:

Code: Alles auswählen

echo '#include "config.h"' > conftest.c
echo '#include "except.h"' >> conftest.c
echo 'xyzzy USING_SJLJ_EXCEPTIONS' >> conftest.c
gcc -E conftest.c -DCROSS_COMPILE -DIN_GCC     -W -Wall -Wwrite-strings -Wstrict
-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long  -DHAVE_
CONFIG_H -I. -I. -I../../gcc-3.0.3/gcc -I../../gcc-3.0.3/gcc/. -I../../gcc-3.0.3
/gcc/config -I../../gcc-3.0.3/gcc/../include > conftest.out
sed -e 's/xyzzy/#define USING_SJLJ_EXCEPTIONS/' -e '/#define/p' \
        -e d conftest.out >> tconfig.h
rm conftest.*
echo '#define FLOAT' > fp-bit.c
cat ../../gcc-3.0.3/gcc/config/fp-bit.c >> fp-bit.c
cat ../../gcc-3.0.3/gcc/config/fp-bit.c > dp-bit.c
make GCC_FOR_TARGET="/home/Administrator/tuxbox-cvs/cdk/build/gcc/xgcc -B/home/A
dministrator/tuxbox-cvs/cdk/build/gcc/ -B/dbox2/cdk/powerpc-tuxbox-linux-gnu/bin
/ -B/dbox2/cdk/powerpc-tuxbox-linux-gnu/lib/ -isystem /dbox2/cdk/powerpc-tuxbox-
linux-gnu/include" \
  HOST_PREFIX="" HOST_PREFIX_1="loser-" \
  AR_FOR_TARGET="powerpc-tuxbox-linux-gnu-ar" \
  AR_CREATE_FOR_TARGET="powerpc-tuxbox-linux-gnu-ar  rc" \
  AR_FLAGS_FOR_TARGET="" \
  OLDCC="cc" CCLIBFLAGS="-O" \
  CFLAGS=" -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wt
raditional -pedantic -Wno-long-long" \
  RANLIB_FOR_TARGET="powerpc-tuxbox-linux-gnu-ranlib" \
  RANLIB_TEST_FOR_TARGET="[ -f powerpc-tuxbox-linux-gnu-ranlib ] || ( [ "i686-pc
-cygwin" = "powerpc-tuxbox-linux-gnu" ] && [ -f /usr/bin/ranlib -o -f /bin/ranli
b ] )" \
  NM_FOR_TARGET="powerpc-tuxbox-linux-gnu-nm" AWK="gawk" \
  LIBGCC2_CFLAGS="-O2  -DCROSS_COMPILE -DIN_GCC    -W -Wall -Wwrite-strings -Wst
rict-prototypes -Wmissing-prototypes -isystem ./include  -fPIC -g1  -DIN_LIBGCC2
 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc" \
  INCLUDES="-I. -I. -I../../gcc-3.0.3/gcc -I../../gcc-3.0.3/gcc/. -I../../gcc-3.
0.3/gcc/config -I../../gcc-3.0.3/gcc/../include" MAYBE_USE_COLLECT2="" \
  CONFIG_H="config.h auto-host.h gansidecl.h ../../gcc-3.0.3/gcc/config/i386/xm-
i386.h ../../gcc-3.0.3/gcc/config/i386/xm-cygwin.h defaults.h hwint.h tm.h gansi
decl.h ../../gcc-3.0.3/gcc/config/rs6000/rs6000.h ../../gcc-3.0.3/gcc/config/svr
4.h ../../gcc-3.0.3/gcc/config/rs6000/sysv4.h ../../gcc-3.0.3/gcc/config/rs6000/
linux.h defaults.h insn-codes.h insn-flags.h" MACHMODE_H="machmode.h machmode.de
f" \
  LIB1ASMSRC='' \
  MAKEOVERRIDES= \
  -f libgcc.mk all
make[4]: Entering directory `/home/Administrator/tuxbox-cvs/cdk/build/gcc'
for d in libgcc nof libgcc/nof; do \
  if [ -d $d ]; then true; else mkdir $d; fi; \
done
if [ -f stmp-dirs ]; then true; else touch stmp-dirs; fi
/home/Administrator/tuxbox-cvs/cdk/build/gcc/xgcc -B/home/Administrator/tuxbox-c
vs/cdk/build/gcc/ -B/dbox2/cdk/powerpc-tuxbox-linux-gnu/bin/ -B/dbox2/cdk/powerp
c-tuxbox-linux-gnu/lib/ -isystem /dbox2/cdk/powerpc-tuxbox-linux-gnu/include -O2
  -DCROSS_COMPILE -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmis
sing-prototypes -isystem ./include  -fPIC -g1  -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NE
EDED -Dinhibit_libc -I. -I. -I../../gcc-3.0.3/gcc -I../../gcc-3.0.3/gcc/. -I../.
./gcc-3.0.3/gcc/config -I../../gcc-3.0.3/gcc/../include  -fPIC -mstrict-align -D
L_muldi3 -c ../../gcc-3.0.3/gcc/libgcc2.c -o libgcc/./_muldi3.o
In file included from tm.h:7,
                 from ../../gcc-3.0.3/gcc/config/rs6000/xm-sysv4.h:35,
                 from tconfig.h:3,
                 from ../../gcc-3.0.3/gcc/libgcc2.c:36:
../../gcc-3.0.3/gcc/config/rs6000/linux.h:81:20: signal.h: No such file or direc
tory
../../gcc-3.0.3/gcc/config/rs6000/linux.h:82:26: sys/ucontext.h: No such file or
 directory
make[4]: *** [libgcc/./_muldi3.o] Error 1
make[4]: Leaving directory `/home/Administrator/tuxbox-cvs/cdk/build/gcc'
make[3]: *** [stmp-multilib] Error 2
make[3]: Leaving directory `/home/Administrator/tuxbox-cvs/cdk/build/gcc'
make[2]: *** [all-gcc] Error 2
make[2]: Leaving directory `/home/Administrator/tuxbox-cvs/cdk/build'
make[1]: *** [bootstrap_gcc] Error 2
make[1]: Leaving directory `/home/Administrator/tuxbox-cvs/cdk'
make: *** [.glibc] Error 2
Thanx chk
+tbn
Interessierter
Interessierter
Beiträge: 43
Registriert: Dienstag 11. Dezember 2001, 00:00

Beitrag von +tbn »

@T-Olli:
Ja, ppcboot ist noch etwas unfertig. Aber es läuft auch:

1.)
boot/ppcboot/Makefile:
TOPDIR := $(shell pwd)
export TOPDIR

2.)
boot/ppcboot/Makefile:
SUBDIRS = $(ARCH) $(CPU) $(BOARD) common net disk

3.)
das Programm mkPPCBootImage.exe (aus einem älteren CDK) in das Verzeichnis boot/ppcboot/tools/mkimage.exe (anderer Name!) kopieren.


@chkdesign:
gib doch bitte mal die Ausgabe von
autoconf --version
automake --version
libtool --version
hier an (jeweils erste Zeile mit Versionsnummer reicht).
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

@+tbn

Code: Alles auswählen

autoconf (GNU Autoconf) 2.52
automake (GNU automake) 1.5
ltmain.sh (GNU libtool) 1.4 (1.927 2001/05/30 19:52:43)

Automake ist 1.5 und bei Dir 1.4. Ist das vielleicht der Grund?

chk
+tbn
Interessierter
Interessierter
Beiträge: 43
Registriert: Dienstag 11. Dezember 2001, 00:00

Beitrag von +tbn »

@chkdesign:
Nein, glaube ich nicht. Bei mir ist es auch 1.5. Nur beim libtool habe ich 1.4.2.

Aber: bei dir bricht ja schon der "bootstrap_gcc" ab. Fehler ist in
gcc-3.0.3/gcc/config/rs6000/linux.h, wo die includes signal.h und sys/ucontext.h nicht gefunden werden.

Normalerweise wird das mit gcc-core.diff gepatcht:
-#include <signal.h>
-#include <sys/ucontext.h>
+#include <asm/sigcontext.h>

Somit ging das Patchen an der Stelle schief.

1.) Gib' mal spaßeshalber "patch --version" ein, um zu prüfen, daß es existiert.
2.) Wechsle in das gcc-3.0.3 Verzeichnis und gib ein:
patch -p1 < ../Patches/gcc-core.diff

Was passiert dort?

+tbn
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

Hi

Wenn ich 1.) und 2.) eingebe passiert gar nichts. Keine Ausgabe oder sonst was. Es kommt einfach wieder die Eingabe.

Ist nicht installiert gewesen. Hab' jetzt Patch Version 2.5 drauf gemacht.

Und probiers nochmal.

Update: Jetzt scheints zu laufen. Läuft auf jeden Fall schon länger als vorher und hat auch schon mehr Daten geschrieben. Mal abwarten

chk
T-Olli
Interessierter
Interessierter
Beiträge: 83
Registriert: Montag 22. Oktober 2001, 00:00

Beitrag von T-Olli »

@+tbn

Vielen Dank für deinen Tip. Mußte noch ein wenig tüfteln aber jetzt ist make all durch.
Bei dem Eintrag
TOPDIR := $(shell pwd)
hatte ich ein Space Zeichen dahinter und dann bricht make mit einen Invalid argument ab.
Aus lauter Verzweifelung hab ich dann den Pfad erst mal direkt eingetragen. Das mit dem Space hab ich erst später gemerkt.

Beim Linux-2.4.2/makefile waren auch noch drei Änderungen nötig:
1) TOPDIR Eintrag wie schon beim pccboot

2) Die Zeile nach _modinst_post: habe ich auskommentiert
# if [ -r System.map ]; then $(DEPMOD) ...

3) Bei dep-files: ist eine Zeile
scripts/mkdep `find ... -print` > .hdepend
Die Anführungszeichen vor "find" und hinter "print" Ascii-Zeichen 0x60 gegen die normalen (0x27) ausgetausch.

Vielleicht helfen meine Änderungen ja auch jemanden.
T-Olli
chkdesign
Senior Member
Beiträge: 1544
Registriert: Freitag 12. Oktober 2001, 00:00

Beitrag von chkdesign »

Hi

Nochmal Danke für die ganze Hilfe. So ganz funktioniert das aber immer noch nicht. Nachdem er ein paar Stunden gewerkelt hat, bricht er damit ab:

Code: Alles auswählen

./ltconfig: Can't open ./ltconfig: No such file or directory
configure: error: libtool tag configuration failed
make: *** [/home/Administrator/tuxbox-cvs/apps/Makefile] Error 1
Wo finde ich denn ltconfig für Cygwin?

Thanx

chk
T-Olli
Interessierter
Interessierter
Beiträge: 83
Registriert: Montag 22. Oktober 2001, 00:00

Beitrag von T-Olli »

Hab's dir gemailt.
T-Olli
trans
Interessierter
Interessierter
Beiträge: 64
Registriert: Montag 21. Januar 2002, 16:52

Beitrag von trans »

T-Olli

Ich habe auch das Problem mit ltconfig.
Kann ich es auch bekommen?

Gruß trans