esound Schönheitsfehler

Games, Plugins, Utils, Tools, 3rdParty, etc...
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

Patch aktualisiert:

- Esound-Menüpunkt wird nur angezeigt, wenn /bin/esd oder /var/bin/esd vorhanden
- Start und Stop von Esound geschieht ohne /var/tuxbox/config/esound.[start|end]
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

Spaß mit mklibs:

mit glibc gelinkt:
# work_glibc/image/cdk/bin/powerpc-tuxbox-linux-gnu-readelf -a work_glibc/image/cdkflash/root-neutrino-squashfs/bin/esd | grep NEEDED
0x00000001 (NEEDED) Shared library: [libesd.so.0]
0x00000001 (NEEDED) Shared library: [libaudiofile.so.0]
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libgcc_s_nof.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.6]
# work_glibc/image/cdk/bin/powerpc-tuxbox-linux-gnu-readelf -a work_glibc/image/cdkflash/root-neutrino-squashfs/lib/libesd.so.0 | grep NEEDED
0x00000001 (NEEDED) Shared library: [libaudiofile.so.0]
0x00000001 (NEEDED) Shared library: [libm.so.6]
0x00000001 (NEEDED) Shared library: [libgcc_s_nof.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.6]
Mit uClibc gelinkt, alle anderen Parameter/Code gleich:
# work_uclibc/image/cdk/bin/powerpc-tuxbox-linux-uclibc-readelf -a work_uclibc/image/cdkflash/root-neutrino-squashfs/bin/esd | grep NEEDED
0x00000001 (NEEDED) Shared library: [libesd.so.0]
0x00000001 (NEEDED) Shared library: [libm.so.0]
0x00000001 (NEEDED) Shared library: [libgcc_s_nof.so.1]
0x00000001 (NEEDED) Shared library: [libc.so.0]
# work_uclibc/image/cdk/bin/powerpc-tuxbox-linux-uclibc-readelf -a work_uclibc/image/cdkflash/root-neutrino-squashfs/lib/libesd.so.0 | grep NEEDED
0x00000001 (NEEDED) Shared library: [libgcc_s_nof.so.1]
0x00000001 (NEEDED) Shared library: [libm.so.0]
0x00000001 (NEEDED) Shared library: [libc.so.0]
libaudiofile.so ist zudem nicht klein:
-rw-r--r-- 1 root root 161124 24. Mär 14:21 work_glibc/image/cdkflash/root-neutrino-squashfs/lib/libaudiofile.so.0
Esound funktioniert in beiden Images, libaudiofile scheint also nicht erforderlich zu sein.
Wieso belässt mklibs es dann im glibc-Image? Für uClibc wird aus Kompatiblitätsgründen
hostapps/mklibs/mklibs_uclibc.py genutzt, könnte es daran liegen?
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:libaudiofile scheint also nicht erforderlich zu sein.
Das stimmt, es besteht die Option, Audio samples auf dem Server abzulegen,
die immer wieder abgespielt werden können. Dafür > 100kb im Flash zu belegen
ist IMHO unnötig. Durch Patches habe ich es erreicht, dass Esound ohne
libaudiofile.so funktioniert, es ist nur noch /bin/esd und /lib/libesd.so.0
erforderlich. Ein Flashimage wird dadurch nur 32kb größer.

Wie wäre es, Esound per Default (make flash-esound in cdk/make/flashroot.mk)
zu kompilieren?
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Durch Patches habe ich es erreicht, dass Esound ohne libaudiofile.so funktioniert
Patch ist im CVS:
http://article.gmane.org/gmane.comp.video.tuxbox.scm/43

Gleichzeitig habe ich den Pulseaudio-Kram entfernt, erstens braucht es
viel zu viel Platz im Flashimage (> 1MB) und zweitens hat es nie stabil
funktioniert, das Thema ist damit für mich erledigt.

Außerdem wird flash-esound jetzt für alle Flashimages mitkompiliert:
http://cvs.tuxbox-cvs.sourceforge.net/c ... 1.8&r2=1.9
Es belegt, wie gesagt, nur 32 KB zusätzlichen Platz im Flashimage.
Wem das nicht gefällt, kann bin/esd und lib/libesd.so.0 per customization-
Skript löschen oder durch Entfernen des o.g. Patch das Kompilieren verhindern.

Wenn dann noch die o.g. Neutrino-Unterstützung für Esound im CVS ist,
haben wir aus der Dbox IMHO einen netten kleinen Soundserver gemacht.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Außerdem wird flash-esound jetzt für alle Flashimages mitkompiliert
Solange der Neutrino-Support nicht im CVS ist, habe
ich das erstmal wieder aus dem CVS entfernt.
http://article.gmane.org/gmane.comp.video.tuxbox.scm/48
jojo
Interessierter
Interessierter
Beiträge: 48
Registriert: Freitag 9. Januar 2009, 18:52

Re: esound Schönheitsfehler

Beitrag von jojo »

Ich kann mich noch so dumm anstellen :dash: - ich kriege den esound einfach nicht gebaut.
- make flash-esound aktiv (Patch 48 rückgängig gemacht)
- make clean ausgeführt
- autogen ausgeführt
- configure ausgeführt

Scheint irgendwie mit libtool zusammenzuhängen:

Code: Alles auswählen

make  all-recursive
make[3]: Entering directory `/home/Playground/workspace/tuxbox/cdk/esound-0.2.41'
make[4]: Entering directory `/home/Playground/workspace/tuxbox/cdk/esound-0.2.41'
/bin/sh ./libtool --tag=CC   --mode=compile powerpc-tuxbox-linux-gnu-gcc -DHAVE_CONFIG_H -I. -DSYSCONFDIR=\"/etc\" -DSERVERDIR=\"/bin\"    -pipe -Os -Wall -MT libesd_la-esdlib.lo -MD -MP -MF .deps/libesd_la-esdlib.Tpo -c -o libesd_la-esdlib.lo `test -f 'esdlib.c' || echo './'`esdlib.c
./libtool: line 847: X--tag=CC: command not found
./libtool: line 880: libtool: ignoring unknown tag : command not found
./libtool: line 847: X--mode=compile: command not found
./libtool: line 1014: *** Warning: inferring the mode of operation is deprecated.: command not found
./libtool: line 1015: *** Future versions of Libtool will require --mode=MODE be specified.: command not found
./libtool: line 1158: Xpowerpc-tuxbox-linux-gnu-gcc: command not found
./libtool: line 1158: X-DHAVE_CONFIG_H: command not found
./libtool: line 1158: X-I.: command not found
./libtool: line 1158: X-DSYSCONFDIR="/etc": No such file or directory
./libtool: line 1158: X-DSERVERDIR="/bin": No such file or directory
./libtool: line 1158: X-pipe: command not found
./libtool: line 1158: X-Os: command not found
./libtool: line 1158: X-Wall: command not found
./libtool: line 1158: X-MT: command not found
./libtool: line 1158: Xlibesd_la-esdlib.lo: command not found
./libtool: line 1158: X-MD: command not found
./libtool: line 1158: X-MP: command not found
./libtool: line 1158: X-MF: command not found
./libtool: line 1158: X.deps/libesd_la-esdlib.Tpo: No such file or directory
./libtool: line 1158: X-c: command not found
./libtool: line 1211: Xlibesd_la-esdlib.lo: command not found
./libtool: line 1216: libtool: compile: cannot determine name of library object from `': command not found
make[4]: *** [libesd_la-esdlib.lo] Error 1
make[4]: Leaving directory `/home/Playground/workspace/tuxbox/cdk/esound-0.2.41'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/Playground/workspace/tuxbox/cdk/esound-0.2.41'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/Playground/workspace/tuxbox/cdk/esound-0.2.41'
make[1]: *** [.deps/esound] Error 2
make[1]: Leaving directory `/home/Playground/workspace/tuxbox/cdk'
make: *** [/home/Playground/tuxbox-clean/dbox2_K26/cdkflash/root] Error 2
Oder wird noch ein Extra-Parameter für configure benötigt?
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: esound Schönheitsfehler

Beitrag von seife »

mach mal "export echo=echo" oder "ECHO=echo" oder mach das im entsprechenden configure oder im passenden Teil des Makefiles.
Sowas hatte ich auch schon mal, war sehr seltsam.
Du schaffst das schon :-)
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

jojo hat geschrieben:ich kriege den esound einfach nicht gebaut.
Welche Distro? Evtl. reicht autoreconf nicht aus.
jojo hat geschrieben:Oder wird noch ein Extra-Parameter für configure benötigt?
Nein
jojo
Interessierter
Interessierter
Beiträge: 48
Registriert: Freitag 9. Januar 2009, 18:52

Re: esound Schönheitsfehler

Beitrag von jojo »

rhabarber1848 hat geschrieben: Welche Distro? Evtl. reicht autoreconf nicht aus.
Ist ein SLED11...
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

jojo hat geschrieben:
rhabarber1848 hat geschrieben: Welche Distro? Evtl. reicht autoreconf nicht aus.
Ist ein SLED11...
Ja, ja, libtool-2.x - das selbe Problem wie mit libvorbisidec.
Ich habe gerade OpenSuse 11 hier installiert und lasse einen
Compile laufen. Wir kriegen das schon in den Griff.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Ja, ja, libtool-2.x
fixed in CVS: http://article.gmane.org/gmane.comp.vid ... ox.scm/110
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Es fehlt noch ein Menüpunkt in Neutrino, um Esound zu starten/stoppen.
EDIT: Patch ist im CVS

[...]

To-Do:
- Personalisierung des Esound-Menüpunktes
- LCD-Anzeige des Esound-Betriebs
- Ein- und Ausschalten von Esound per Webinterface
Patch ist im CVS, trotz der To-Do-Liste.
Esound wird jetzt mit yadd-neutrino oder flash-neutrino-*-all kompiliert.

@Imagebauer: Der Patch unterstützt folgende Szenarien:
/bin/esd oder /var/bin/esd (libesd.so.0 nicht vergessen ;) )
/etc/init.d/start_esound oder /var/etc/init.d/start_esound

Damit kann Esound auch nachträglich als Plugin angeboten werden.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: esound Schönheitsfehler

Beitrag von seife »

Wie wäre es denn mit "--enable-esound"? Ich werde das Feature vermutlich nie Nutzen, aber es braucht Platz im Flash ;)
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

seife hat geschrieben:Wie wäre es denn mit "--enable-esound"?
Ich denke, das wäre eher etwas für --with-tools
seife hat geschrieben:Ich werde das Feature vermutlich nie Nutzen, aber es braucht Platz im Flash ;)
32KB benötigt es, das ist nicht die Welt. Bis der o.g. Patch
implementiert ist, musst Du Dein customization-Skript erweitern ;)
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: esound Schönheitsfehler

Beitrag von seife »

Ich benutze eh nicht das cdk/ aus dem cvs, aber neutrino ist halt auch grösser. Da mach ich mal ein paar #ifdefs rein.
tine1084
Einsteiger
Einsteiger
Beiträge: 160
Registriert: Freitag 8. September 2006, 14:58

Re: esound Schönheitsfehler

Beitrag von tine1084 »

Ich habe gerade mal versucht ein neues image zu bauen, bricht jetzt aber leider hier ab:

Code: Alles auswählen

( rm -rf esound-0.2.41 || /bin/true ) && bunzip2 -cd Archive/esound-0.2.41.tar.bz2 | TAPE=- tar -x && ( cd esound-0.2.41; patch -p1 < ../Patches/esound.diff ) && ((for f1 in config.guess config.sub; do (for f2 in `find esound-0.2.41 -name $f1`; do (test -e $f2 && rm -f $f2 && ln -s /home/tine1084/tuxbox-cvs/cdk/Patches/$f1 $f2 && echo "updated $f2") done) done) || /bin/true)
patching file configure.ac
patching file esd.h
patching file Makefile.am
updated esound-0.2.41/config.guess
updated esound-0.2.41/config.sub
cd esound-0.2.41 && \
                autoconf && \
                automake && \
                AR=powerpc-tuxbox-linux-gnu-ar AS=powerpc-tuxbox-linux-gnu-as CC=powerpc-tuxbox-linux-gnu-gcc CXX=powerpc-tuxbox-linux-gnu-g++ NM=powerpc-tuxbox-linux-gnu-nm RANLIB=powerpc-tuxbox-linux-gnu-ranlib CFLAGS="-pipe -Os" CXXFLAGS="-pipe -Os" LDFLAGS="-Wl,-O1" PKG_CONFIG_PATH=/home/tine1084/dbox2/cdkroot/lib/pkgconfig \
                ./configure \
                        --build=i686-suse-linux-gnu \
                        --host=powerpc-tuxbox-linux-gnu \
                        --prefix= \
                        --disable-ipv6 \
                        --disable-alsa \
                        --disable-arts && \
                make all && \
                make install DESTDIR=/home/tine1084/dbox2/cdkroot && perl -pi -e "s,^libdir=.*$,libdir='/home/tine1084/dbox2/cdkroot/lib',"  /home/tine1084/dbox2/cdkroot/lib/libesd.la
configure.ac:10: version mismatch.  This is Automake 1.10,
configure.ac:10: but the definition used by this AM_INIT_AUTOMAKE
configure.ac:10: comes from Automake 1.10.1.  You should recreate
configure.ac:10: aclocal.m4 with aclocal and run automake again.
make: *** [.deps/esound] Fehler 63
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

tine1084 hat geschrieben:configure.ac:10: version mismatch. This is Automake 1.10,
configure.ac:10: but the definition used by this AM_INIT_AUTOMAKE
configure.ac:10: comes from Automake 1.10.1. You should recreate
configure.ac:10: aclocal.m4 with aclocal and run automake again.
Und wieder mal autoconf... Welche Distro nutzt Du?

Auf Debian Lenny mit
# automake --version
automake (GNU automake) 1.10.1
lässt sich esound problemlos kompilieren...
tine1084
Einsteiger
Einsteiger
Beiträge: 160
Registriert: Freitag 8. September 2006, 14:58

Re: esound Schönheitsfehler

Beitrag von tine1084 »

Ich nutze suse 10.3

tine1084@linux:~> automake --version
automake (GNU automake) 1.10
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

tine1084 hat geschrieben:Ich nutze suse 10.3
OK, ich lade mir jetzt OpenSuse 10.3 herunter und versuche,
das Problem zu lösen, wird aber ein paar Stunden lang dauern.
Mit OpenSuse 11.1 funktioniert es übrigens...
doc
Contributor
Beiträge: 1623
Registriert: Donnerstag 10. Januar 2002, 20:03

Re: esound Schönheitsfehler

Beitrag von doc »

Lohnt sich das?
Warum nicht einfach mal automake auf die gewünschte Version updaten?
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

doc hat geschrieben:Warum nicht einfach mal automake auf die gewünschte Version updaten?
Nicht jede automake-Version ist überall verfügbar.

Das Problem liegt woanders, ich patche Esound, damit die Abhängigkeit
zu libaudiofile verschwindet. Dazu muss mittels Host-Tools configure/
Makefile.in neu gebaut werden. Anfangs habe ich dazu autoreconf
verwendet, was aber auf libtool2-Systemen nicht funktioniert:
http://forum.tuxbox-cvs.sourceforge.net ... 39#p366339

Wenn ich autoreconf auf Suse 10.3 (Debian Etch hat das gleiche Problem),
statt wie jetzt im CVS autoconf/automake, aufrufe, funktioniert der
Esound-compile. Das wiederum ist inkompatibel zu libtool2-Systemen.

Ich teste nun ein im CDK gebautes libtool-1.5, was für das gesamte
Tuxbox-CVS genutzt werden soll, um vom Hostsystem etwas
unabhängiger zu werden. Für Opensuse 11.1 gibt es kein libtool-1.x-
Paket mehr...
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Ich teste nun ein im CDK gebautes libtool-1.5, was für das gesamte
Tuxbox-CVS genutzt werden soll, um vom Hostsystem etwas unabhängiger zu werden.
Hier gibt es was zum Spielen: libtool.diff

Bitte auf so vielen Distros wie möglich testen,
u.a. Debian Etch und Lenny, OpenSuse 10.3 und 11.1.
tine1084
Einsteiger
Einsteiger
Beiträge: 160
Registriert: Freitag 8. September 2006, 14:58

Re: esound Schönheitsfehler

Beitrag von tine1084 »

@rhabarber1848,
mit deinem patch bricht das bauen hier ab:

Code: Alles auswählen

configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
make[1]: Entering directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26'
Making all in .
make[2]: Entering directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26'
CONFIG_FILES=libtoolize CONFIG_HEADERS= /bin/sh ./config.status
config.status: creating libtoolize
config.status: executing depfiles commands
chmod +x libtoolize
make[2]: Leaving directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26'
Making all in libltdl
make[2]: Entering directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26/libltdl'
make  all-am
make[3]: Entering directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26/libltdl'
/bin/sh ./libtool --tag=CC   --mode=compile powerpc-tuxbox-linux-gnu-gcc -DHAVE_CONFIG_H -I.     -pipe -Os -c -o ltdl.lo ltdl.c
mkdir .libs
 powerpc-tuxbox-linux-gnu-gcc -DHAVE_CONFIG_H -I. -pipe -Os -c ltdl.c  -fPIC -DPIC -o .libs/ltdl.o
 powerpc-tuxbox-linux-gnu-gcc -DHAVE_CONFIG_H -I. -pipe -Os -c ltdl.c -o ltdl.o >/dev/null 2>&1
/bin/sh ./libtool --tag=CC   --mode=link powerpc-tuxbox-linux-gnu-gcc  -pipe -Os -no-undefined -version-info 4:6:1 -Wl,-O1 -o libltdl.la -rpath /usr/lib ltdl.lo -ldl
powerpc-tuxbox-linux-gnu-gcc -shared  .libs/ltdl.o  -ldl  -Wl,-O1 -Wl,-soname -Wl,libltdl.so.3 -o .libs/libltdl.so.3.1.6
(cd .libs && rm -f libltdl.so.3 && ln -s libltdl.so.3.1.6 libltdl.so.3)
(cd .libs && rm -f libltdl.so && ln -s libltdl.so.3.1.6 libltdl.so)
powerpc-tuxbox-linux-gnu-ar cru .libs/libltdl.a  ltdl.o
powerpc-tuxbox-linux-gnu-ranlib .libs/libltdl.a
creating libltdl.la
(cd .libs && rm -f libltdl.la && ln -s ../libltdl.la libltdl.la)
make[3]: Leaving directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26/libltdl'
make[2]: Leaving directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26/libltdl'
Making all in doc
make[2]: Entering directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26/doc'
make[2]: Für das Ziel »all« ist nichts zu tun.
make[2]: Leaving directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26/doc'
Making all in tests
make[2]: Entering directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26/tests'
make[2]: Für das Ziel »all« ist nichts zu tun.
make[2]: Leaving directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26/tests'
make[1]: Leaving directory `/home/tine1084/tuxbox-cvs/cdk/libtool-1.5.26'
rm -rf libtool-1.5.26
touch .deps/libtool
make: *** Keine Regel vorhanden, um das Target »touch«,
  benötigt von ».deps/bootstrap«, zu erstellen.  Schluss.
getestet mit suse 10.3
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Hier gibt es was zum Spielen: libtool.diff
Neuer, einfacherer Versuch.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: esound Schönheitsfehler

Beitrag von rhabarber1848 »

tine1084 hat geschrieben:getestet mit suse 10.3
Ich habe den letzten Patch ins CVS eingecheckt:
http://cvs.tuxbox-cvs.sourceforge.net/c ... 14&r2=1.15

Damit konnte ich auf Suse 10.3 & 11.1 und Debian Etch & Lenny kompilieren.