uclibc patch

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Re: uclibc patch

Beitrag von Houdini »

seife hat geschrieben:Die pthread_mutex-Sachen sind klare Bugfixes, auch mit glibc, es ist wohl bisher nur noch niemand aufgefallen, dass da evtl. was schief geht. Allerdings ist der Internetradio-"Fix" wirklich die Holzhammermethode, insofern würde ich da vorziehen, wenn sich jemand mal das Locking in netfile.c anschaut. Was ich so auf den ersten Blick gesehen habe, war IMVHO nicht korrekt.
Sach ich ja, brute force :-), ich schau nochmal drüber...
Im sectionsd meinte ich u.a. die Stelle hier in den einzelnen Threads:

Code: Alles auswählen

rs = pthread_cond_timedwait( &dmxNIT.change_cond, &dmxNIT.start_stop_mutex, &abs_wait );
Da wird ein paar Zeilen vorher im if Zweig schon ein unlock aufgerufen, in diesem Fall müsste das auch schiefgehen oder?

Code: Alles auswählen

pthread_mutex_unlock( &dmxNIT.start_stop_mutex );
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

Hab's folgendermassen gelöst. Scheint ja nur ein Gentoo Problem zu sein.

Code: Alles auswählen

--- contrib-libs.mk.orig	2008-09-29 09:39:52.000000000 +0200
+++ contrib-libs.mk	2008-09-29 20:30:37.000000000 +0200
@@ -317,6 +317,7 @@
 	@PREPARE_libpng@
 	cd @DIR_libpng@ && \
 		./autogen.sh && \
+		libtoolize --copy --force && \
 		$(BUILDENV) CFLAGS="$(TARGET_CFLAGS) -fPIC" \
 		./configure \
 			--build=$(build) \
libdirectfb kompiliert jetzt leider auch nicht mehr :-(

Kannst Du mir den alten rules-make.diff bitte an das aktuelle CVS anpassen?

Code: Alles auswählen

( rm -rf DirectFB-1.0.0 || /bin/true ) && gunzip -cd Archive/DirectFB-1.0.0.tar.gz | TAPE=- tar -x
cd DirectFB-1.0.0 && \
		AR=powerpc-linux-gnu-ar AS=powerpc-linux-gnu-as CC=powerpc-linux-gnu-gcc CXX=powerpc-linux-gnu-g++ NM=powerpc-linux-gnu-nm RANLIB=powerpc-linux-gnu-ranlib CFLAGS="-pipe -Os" CXXFLAGS="-pipe -Os" LDFLAGS="-Wl,-O1" PKG_CONFIG_PATH=/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdkroot/lib/pkgconfig CFLAGS="-pipe -Os -fPIC" \
		LDFLAGS=-L/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdkroot/lib \
		CPPFLAGS="-I/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/linux/arch/ppc" \
		CFLAGS="-pipe -Os -I/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/linux/arch/ppc" \
		./configure \
			--build=x86_64-unknown-linux-gnu \
			--host=powerpc-linux-gnu \
			--prefix= \
			--disable-debug \
			--with-inputdrivers=linuxinput \
			--disable-sdl \
			--disable-vnc \
			--disable-multi \
			--without-tools \
			--with-gfxdrivers=none && \
		make all && \
		perl -pi -e "s,^prefix=.*$,prefix=/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdkroot," directfb.pc && perl -pi -e "s,^prefix=.*$,prefix=/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdkroot," directfb-internal.pc && make install DESTDIR=/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdkroot && perl -pi -e "s,^libdir=.*$,libdir='/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdkroot/lib',"  /media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdkroot/lib/libdirectfb.la
checking build system type... x86_64-unknown-linux-gnu
checking host system type... powerpc-unknown-linux-gnu
checking target system type... powerpc-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for powerpc-linux-gnu-strip... powerpc-linux-gnu-strip
checking whether to enable maintainer-specific portions of Makefiles... no
checking for powerpc-linux-gnu-gcc... powerpc-linux-gnu-gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... yes
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether powerpc-linux-gnu-gcc accepts -g... yes
checking for powerpc-linux-gnu-gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of powerpc-linux-gnu-gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ld used by powerpc-linux-gnu-gcc... /media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld
checking if the linker (/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld) is GNU ld... yes
checking for /media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld option to reload object files... -r
checking for BSD-compatible nm... powerpc-linux-gnu-nm
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking how to run the C preprocessor... powerpc-linux-gnu-gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking whether we are using the GNU C++ compiler... yes
checking whether powerpc-linux-gnu-g++ accepts -g... yes
checking dependency style of powerpc-linux-gnu-g++... gcc3
checking how to run the C++ preprocessor... powerpc-linux-gnu-g++ -E
checking for powerpc-linux-gnu-g77... no
checking for powerpc-linux-gnu-xlf... no
checking for powerpc-linux-gnu-f77... no
checking for powerpc-linux-gnu-frt... no
checking for powerpc-linux-gnu-pgf77... no
checking for powerpc-linux-gnu-cf77... no
checking for powerpc-linux-gnu-fort77... no
checking for powerpc-linux-gnu-fl32... no
checking for powerpc-linux-gnu-af77... no
checking for powerpc-linux-gnu-xlf90... no
checking for powerpc-linux-gnu-f90... no
checking for powerpc-linux-gnu-pgf90... no
checking for powerpc-linux-gnu-pghpf... no
checking for powerpc-linux-gnu-epcf90... no
checking for powerpc-linux-gnu-gfortran... no
checking for powerpc-linux-gnu-g95... no
checking for powerpc-linux-gnu-xlf95... no
checking for powerpc-linux-gnu-f95... no
checking for powerpc-linux-gnu-fort... no
checking for powerpc-linux-gnu-ifort... no
checking for powerpc-linux-gnu-ifc... no
checking for powerpc-linux-gnu-efc... no
checking for powerpc-linux-gnu-pgf95... no
checking for powerpc-linux-gnu-lf95... no
checking for powerpc-linux-gnu-ftn... no
checking for g77... no
checking for xlf... no
checking for f77... no
checking for frt... no
checking for pgf77... no
checking for cf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for xlf90... no
checking for f90... no
checking for pgf90... no
checking for pghpf... no
checking for epcf90... no
checking for gfortran... gfortran
configure: WARNING: In the future, Autoconf will not detect cross-tools
whose name does not start with the host triplet.  If you think this
configuration is useful to you, please write to autoconf@gnu.org.
checking whether we are using the GNU Fortran 77 compiler... yes
checking whether gfortran accepts -g... yes
checking the maximum length of command line arguments... 32768
checking command to parse powerpc-linux-gnu-nm output from powerpc-linux-gnu-gcc object... ok
checking for objdir... .libs
checking for powerpc-linux-gnu-ar... powerpc-linux-gnu-ar
checking for powerpc-linux-gnu-ranlib... powerpc-linux-gnu-ranlib
checking for powerpc-linux-gnu-strip... (cached) powerpc-linux-gnu-strip
checking if powerpc-linux-gnu-gcc supports -fno-rtti -fno-exceptions... no
checking for powerpc-linux-gnu-gcc option to produce PIC... -fPIC
checking if powerpc-linux-gnu-gcc PIC flag -fPIC works... yes
checking if powerpc-linux-gnu-gcc static flag -static works... yes
checking if powerpc-linux-gnu-gcc supports -c -o file.o... yes
checking whether the powerpc-linux-gnu-gcc linker (/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by powerpc-linux-gnu-g++... /media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld
checking if the linker (/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld) is GNU ld... yes
checking whether the powerpc-linux-gnu-g++ linker (/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld) supports shared libraries... yes
checking for powerpc-linux-gnu-g++ option to produce PIC... -fPIC
checking if powerpc-linux-gnu-g++ PIC flag -fPIC works... yes
checking if powerpc-linux-gnu-g++ static flag -static works... yes
checking if powerpc-linux-gnu-g++ supports -c -o file.o... yes
checking whether the powerpc-linux-gnu-g++ linker (/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
appending configuration tag "F77" to libtool
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for gfortran option to produce PIC... -fPIC
checking if gfortran PIC flag -fPIC works... yes
checking if gfortran static flag -static works... no
checking if gfortran supports -c -o file.o... yes
checking whether the gfortran linker (/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/powerpc-tuxbox-linux-uclibc/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether build environment is sane... yes
checking for strerror in -lcposix... no
checking for a BSD-compatible install... /usr/bin/install -c
checking whether make sets $(MAKE)... (cached) yes
checking for ANSI C header files... (cached) yes
checking whether byte ordering is bigendian... yes
checking for int... yes
checking size of int... 4
checking for long... yes
checking size of long... 4
checking for long long... yes
checking size of long long... 8
checking for perl5... no
checking for perl... /usr/bin/perl
checking for man2html... /usr/bin/man2html
checking Carbon/Carbon.h usability... no
checking Carbon/Carbon.h presence... no
checking for Carbon/Carbon.h... no
configure: WARNING:
*** no Carbon/Carbon.h found -- building without Mac OS X support.
checking linux/compiler.h usability... no
checking linux/compiler.h presence... no
checking for linux/compiler.h... no
checking linux/unistd.h usability... yes
checking linux/unistd.h presence... yes
checking for linux/unistd.h... yes
checking asm/page.h usability... no
checking asm/page.h presence... no
checking for asm/page.h... no
checking for pthread_attr_init in -lpthread... yes
checking whether PTHREAD_MUTEX_RECURSIVE is declared... yes
checking whether PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP is declared... yes
checking for dlopen in -ldl... yes
checking stdbool.h usability... yes
checking stdbool.h presence... yes
checking for stdbool.h... yes
checking for sysfs_get_mnt_path in -lsysfs... no
configure: WARNING:  *** libsysfs not found -- Building without sysfs support.
checking for jpeg_destroy_decompress in -ljpeg... yes
checking jpeglib.h usability... yes
checking jpeglib.h presence... yes
checking for jpeglib.h... yes
checking for gzsetparams in -lz... yes
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for libpng-config... /media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/bin/libpng-config
checking for freetype-config... /media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdk/bin/freetype-config
checking which gfxdrivers should be built... checking which inputdrivers should be built... linuxinput
checking linux/input.h usability... yes
checking linux/input.h presence... yes
checking for linux/input.h... yes
checking for struct input_absinfo in linux/input.h... yes
configure: creating ./config.status
config.status: creating directfb-config
config.status: creating directfb.pc
config.status: creating directfb-internal.pc
config.status: creating directfb.spec
config.status: creating Makefile
config.status: creating include/Makefile
config.status: creating include/directfb_version.h
config.status: creating lib/Makefile
config.status: creating lib/direct/Makefile
config.status: creating lib/direct/build.h
config.status: creating lib/direct/direct.pc
config.status: creating lib/fusion/Makefile
config.status: creating lib/fusion/build.h
config.status: creating lib/fusion/fusion.pc
config.status: creating lib/fusion/shm/Makefile
config.status: creating lib/voodoo/Makefile
config.status: creating lib/voodoo/build.h
config.status: creating lib/voodoo/voodoo.pc
config.status: creating patches/Makefile
config.status: creating proxy/Makefile
config.status: creating proxy/dispatcher/Makefile
config.status: creating proxy/requestor/Makefile
config.status: creating rules/Makefile
config.status: creating src/Makefile
config.status: creating src/core/Makefile
config.status: creating src/display/Makefile
config.status: creating src/gfx/Makefile
config.status: creating src/gfx/generic/Makefile
config.status: creating src/input/Makefile
config.status: creating src/media/Makefile
config.status: creating src/misc/Makefile
config.status: creating src/windows/Makefile
config.status: creating systems/Makefile
config.status: creating systems/fbdev/Makefile
config.status: creating systems/x11/Makefile
config.status: creating systems/osx/Makefile
config.status: creating systems/sdl/Makefile
config.status: creating systems/vnc/Makefile
config.status: creating wm/Makefile
config.status: creating wm/default/Makefile
config.status: creating wm/unique/Makefile
config.status: creating wm/unique/classes/Makefile
config.status: creating wm/unique/data/Makefile
config.status: creating wm/unique/devices/Makefile
config.status: creating gfxdrivers/Makefile
config.status: creating gfxdrivers/ati128/Makefile
config.status: creating gfxdrivers/cle266/Makefile
config.status: creating gfxdrivers/cyber5k/Makefile
config.status: creating gfxdrivers/i810/Makefile
config.status: creating gfxdrivers/i830/Makefile
config.status: creating gfxdrivers/mach64/Makefile
config.status: creating gfxdrivers/matrox/Makefile
config.status: creating gfxdrivers/neomagic/Makefile
config.status: creating gfxdrivers/nsc/Makefile
config.status: creating gfxdrivers/nsc/include/Makefile
config.status: creating gfxdrivers/nvidia/Makefile
config.status: creating gfxdrivers/radeon/Makefile
config.status: creating gfxdrivers/savage/Makefile
config.status: creating gfxdrivers/sis315/Makefile
config.status: creating gfxdrivers/tdfx/Makefile
config.status: creating gfxdrivers/unichrome/Makefile
config.status: creating inputdrivers/Makefile
config.status: creating inputdrivers/dbox2remote/Makefile
config.status: creating inputdrivers/dreamboxremote/Makefile
config.status: creating inputdrivers/dynapro/Makefile
config.status: creating inputdrivers/elo/Makefile
config.status: creating inputdrivers/gunze/Makefile
config.status: creating inputdrivers/h3600_ts/Makefile
config.status: creating inputdrivers/joystick/Makefile
config.status: creating inputdrivers/keyboard/Makefile
config.status: creating inputdrivers/linux_input/Makefile
config.status: creating inputdrivers/lirc/Makefile
config.status: creating inputdrivers/mutouch/Makefile
config.status: creating inputdrivers/penmount/Makefile
config.status: creating inputdrivers/ps2mouse/Makefile
config.status: creating inputdrivers/serialmouse/Makefile
config.status: creating inputdrivers/sonypi/Makefile
config.status: creating inputdrivers/tslib/Makefile
config.status: creating inputdrivers/ucb1x00_ts/Makefile
config.status: creating inputdrivers/wm97xx_ts/Makefile
config.status: creating interfaces/Makefile
config.status: creating interfaces/IDirectFBFont/Makefile
config.status: creating interfaces/IDirectFBImageProvider/Makefile
config.status: creating interfaces/IDirectFBImageProvider/mpeg2/Makefile
config.status: creating interfaces/IDirectFBVideoProvider/Makefile
config.status: creating data/Makefile
config.status: creating tests/Makefile
config.status: creating tools/Makefile
config.status: creating docs/Makefile
config.status: creating docs/dfbg.1
config.status: creating docs/directfb-csource.1
config.status: creating docs/directfbrc.5
config.status: creating docs/html/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing default commands

Build options:
  Version                   1.0.0
  Install prefix            
  Build shared libs         yes
  Build static libs         no
  Module directory          ${exec_prefix}/lib/directfb-1.0-0
  CPPFLAGS                  -D_REENTRANT -I/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/linux/arch/ppc
  CFLAGS                    -O3 -ffast-math -pipe -pipe -Os -I/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/linux/arch/ppc -D_GNU_SOURCE  -Werror-implicit-function-declaration
  LDFLAGS                   -L/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/dbox2/cdkroot/lib
  LIBS                      -ldl -lpthread 

Misc options:
  Multi Application Core    no
  Fusion message size       1024
  Voodoo (network support)  no
  Debug supported           yes
  Debug enabled             no
  Trace support             no
  MMX support               no
  SSE support               no
  Network support           yes
  zlib compression          no
  sysfs support             no

Building Core Systems:
  Linux FBDev support       yes
  X11 support               no
  OSX support               no
  SDL support               no
  VNC support               no

Building WM Modules:
  Default                   yes
  UniQuE                    no

Building Tests              no
Building Tools              no

Building Image Providers:
  GIF                       yes
  JPEG                      yes
  MPEG2 I-Frame             yes
  PNG                       yes

Building Video Providers:
  GIF                       yes
  Video4Linux               yes (v2: no)

Building Font implementations:
  FreeType2                 yes
  Default font              yes

Building Graphics Drivers:
  3Dfx Voodoo               no
  ATI Mach64                no
  ATI Rage 128              no
  ATI Radeon                no
  Intel i810                no
  Intel i830                no
  Matrox                    no
  NeoMagic                  no
  NSC Geode                 no
  nVidia                    no
  S3 Savage                 no
  SiS 315                   no
  TVIA CyberPro             no
  VIA CLE266                no
  VIA UniChrome             no

Building Input Drivers:
  DBox2 Remote              no
  DreamBox Remote           no
  Dynapro Touchscreen       no
  ELO Touchscreen           no
  Gunze Touchscreen         no
  H3600 Touchscreen         no
  Joystick                  no
  Keyboard                  no
  Linux Input               yes
  LiRC                      no
  MuTouch touchscreen       no
  PS/2 Mouse                no
  Serial Mouse              no
  SonyPI Jogdial            no
  tslib                     no
  ucb1x00 Touchscreen       no
  WM97xx Touchscreen        no
  

make[1]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0'
make  all-recursive
make[2]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0'
Making all in data
make[3]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/data'
make[3]: Für das Ziel »all« ist nichts zu tun.
make[3]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/data'
Making all in docs
make[3]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/docs'
Making all in html
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/docs/html'
rootme=`pwd`; \
	/usr/bin/perl ../../tools/gendoc.pl 1.0.0 ../../include/directfb.h ../../include/directfb_keyboard.h ../../include/directfbgl.h \
	&& echo timestamp > $rootme/stamp-docs
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/docs/html'
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/docs'
/usr/bin/man2html directfb-csource.1 > directfb-csource.1.html
/usr/bin/man2html dfbg.1 > dfbg.1.html
/usr/bin/man2html directfbrc.5 > directfbrc.5.html
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/docs'
make[3]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/docs'
Making all in include
make[3]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/include'
../include/mknames.sh DFBInputDeviceKeySymbol DIKS NULL KeySymbol symbol ../include/directfb_keyboard.h \
	   | grep -v DIKS_ENTER >> directfb_keynames.h
../include/mknames.sh DFBInputDeviceKeyIdentifier DIKI UNKNOWN KeyIdentifier identifier ../include/directfb_keyboard.h \
	   | grep -v DIKI_NUMBER_OF_KEYS | grep -v DIKI_KEYDEF_END >> directfb_keynames.h
../include/mknames.sh DFBSurfacePixelFormat DSPF UNKNOWN PixelFormat format ../include/directfb.h >> directfb_strings.h
../include/mknames.sh DFBInputDeviceTypeFlags DIDTF NONE InputDeviceTypeFlags type ../include/directfb.h \
	   | grep -v DIDTF_ALL >> directfb_strings.h
../include/mknames.sh DFBSurfaceDrawingFlags DSDRAW NOFX SurfaceDrawingFlags flag ../include/directfb.h \
	   | grep -v DSDRAW_ALL >> directfb_strings.h
../include/mknames.sh DFBSurfaceBlittingFlags DSBLIT NOFX SurfaceBlittingFlags flag ../include/directfb.h \
	   | grep -v DSBLIT_ALL >> directfb_strings.h
FIXME: Use DIMCAPS prefix for DFBImageCapabilities
../include/mknames.sh DFBInputDeviceCapabilities DICAPS NONE InputDeviceCapabilities capability ../include/directfb.h \
	   | grep -v DICAPS_ALL | grep -v DICAPS_ALPHACHANNEL | grep -v DICAPS_COLORKEY >> directfb_strings.h
../include/mknames.sh DFBDisplayLayerTypeFlags DLTF NONE DisplayLayerTypeFlags type ../include/directfb.h \
	   | grep -v DLTF_ALL >> directfb_strings.h
../include/mknames.sh DFBDisplayLayerCapabilities DLCAPS NONE DisplayLayerCapabilities capability ../include/directfb.h \
	   | grep -v DLCAPS_ALL >> directfb_strings.h
../include/mknames.sh DFBDisplayLayerBufferMode DLBM UNKNOWN DisplayLayerBufferMode mode ../include/directfb.h \
	   | grep -v DLBM_DONTCARE | grep -v DLBM_COLOR | grep -v DLBM_IMAGE | grep -v DLBM_TILE >> directfb_strings.h
../include/mknames.sh DFBScreenCapabilities DSCCAPS NONE ScreenCapabilities capability ../include/directfb.h \
	   | grep -v DSCCAPS_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenEncoderCapabilities DSECAPS NONE ScreenEncoderCapabilities capability ../include/directfb.h \
	   | grep -v DSECAPS_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenEncoderType DSET UNKNOWN ScreenEncoderType type ../include/directfb.h \
	   | grep -v DSET_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenEncoderTVStandards DSETV UNKNOWN ScreenEncoderTVStandards standard ../include/directfb.h \
	   | grep -v DSETV_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenOutputCapabilities DSOCAPS NONE ScreenOutputCapabilities capability ../include/directfb.h \
	   | grep -v DSOCAPS_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenOutputConnectors DSOC UNKNOWN ScreenOutputConnectors connector ../include/directfb.h \
	   | grep -v DSOC_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenOutputSignals DSOS NONE ScreenOutputSignals signal ../include/directfb.h \
	   | grep -v DSOS_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenOutputSlowBlankingSignals DSOSB OFF ScreenOutputSlowBlankingSignals slow_signal ../include/directfb.h \
	   | grep -v DSOSB_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenMixerCapabilities DSMCAPS NONE ScreenMixerCapabilities capability ../include/directfb.h \
	   | grep -v DSMCAPS_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenMixerTree DSMT UNKNOWN ScreenMixerTree tree ../include/directfb.h \
	   | grep -v DSMT_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenEncoderTestPicture DSETP OFF ScreenEncoderTestPicture test_picture ../include/directfb.h \
	   | grep -v DSETP_ALL >> directfb_strings.h
../include/mknames.sh DFBScreenEncoderScanMode DSESM UNKNOWN ScreenEncoderScanMode scan_mode ../include/directfb.h \
	   | grep -v DSESM_ALL >> directfb_strings.h
../include/mknames.sh DFBAccelerationMask DFXL NONE AccelerationMask mask ../include/directfb.h \
	   | grep -v DFXL_ALL >> directfb_strings.h
make[3]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/include'
Making all in lib
make[3]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/lib'
Making all in direct
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/lib/direct'
/bin/sh ../../libtool --mode=compile powerpc-linux-gnu-gcc  -pipe -Os -I/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/linux/arch/ppc -c -o ppcasm_memcpy.lo ppcasm_memcpy.S
mkdir .libs
 powerpc-linux-gnu-gcc -pipe -Os -I/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/linux/arch/ppc -c ppcasm_memcpy.S  -fPIC -DPIC -o .libs/ppcasm_memcpy.o
/bin/sh ../../libtool --mode=compile powerpc-linux-gnu-gcc  -pipe -Os -I/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/linux/arch/ppc -c -o ppcasm_memcpy_cachable.lo ppcasm_memcpy_cachable.S
 powerpc-linux-gnu-gcc -pipe -Os -I/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/linux/arch/ppc -c ppcasm_memcpy_cachable.S  -fPIC -DPIC -o .libs/ppcasm_memcpy_cachable.o
ppcasm_memcpy_cachable.S:37:26: linux/config.h: No such file or directory
make[4]: *** [ppcasm_memcpy_cachable.lo] Fehler 1
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/lib/direct'
make[3]: *** [all-recursive] Fehler 1
make[3]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0/lib'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0'
make[1]: *** [all] Fehler 2
make[1]: Leaving directory `/media/disk/tuxbox-uclibc-2.6-2008-09-29_20-09/tuxbox-cvs/cdk/DirectFB-1.0.0'
make: *** [.deps/libdirectfb] Fehler 2
libdirectfb benötige ich für links im graphic mode.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: uclibc patch

Beitrag von seife »

Houdini hat geschrieben:Sach ich ja, brute force :-), ich schau nochmal drüber...
War auch nicht böse gemeint - zum Einchecken würde ich es aber vorziehen, den Code richtig zu fixen und nicht nur ein Pflaster auf den Bug zu kleben. Wenn wir es nicht finden, dann muss wenigstens ein dicker Kommentar an die Stelle, der erklärt warum es jetzt halt so gemacht wurde. (Im sectionsd finde ich oft genug Code-Stellen, an denen ich mir nicht sicher bin, ob sich dabei jemand was gedacht hat, oder ob das einfach "aus Versehen" so scheisse ist ;))
Im sectionsd meinte ich u.a. die Stelle hier in den einzelnen Threads:

Code: Alles auswählen

rs = pthread_cond_timedwait( &dmxNIT.change_cond, &dmxNIT.start_stop_mutex, &abs_wait );
Da wird ein paar Zeilen vorher im if Zweig schon ein unlock aufgerufen, in diesem Fall müsste das auch schiefgehen oder?

Code: Alles auswählen

pthread_mutex_unlock( &dmxNIT.start_stop_mutex );
Tatsächlich wird ein paar Zeilen weiter oben der dmxSDT-Mutex unlocked. Das ist mir auch schon aufgefallen, das meinte ich weiter oben auch. Es kann allerdings sein, dass vor change() oder real_unpause() der mutex unlocked werden muss, das schau ich mir mal an.

Eigentlich ist das ein cooles debugging-Feature von uclibc, dass die Programme einem um die Ohren fliegen wenn das Locking unsauber programmiert ist... ;)
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

amiga23 hat geschrieben:

Code: Alles auswählen

 	cd @DIR_libpng@ && \
 		./autogen.sh && \
+		libtoolize --copy --force && \
autogen.sh ist nur nötig, wenn configure.ac geändert wurde. Heutzutage wird
cdk/Patches/libpng.diff allerdings nicht mehr angewendet. Am 06.01.2007
wurde dieser Patch deaktiviert. Er ist wirklich nicht mehr nötig.
Deshalb ist der Aufruf von ./autogen.sh nicht mehr nötig, damit sollte auch
das libtool-Problem entfallen. Teste bitte diesen Patch: EDIT: Patch ist im CVS

Mit libpng-1.2.31 (aktuelle Version) ist die library 2kb größer, ein Update ist also nicht nötig.
Zuletzt geändert von rhabarber1848 am Dienstag 30. September 2008, 21:40, insgesamt 2-mal geändert.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

amiga23 hat geschrieben:ppcasm_memcpy_cachable.S:37:26: linux/config.h: No such file or directory
In Debian wurde der Header-include einfach gelöscht, also machen wir das gleiche: EDIT: Patch ist im CVS

Damit läuft der Kompilierprozess mit Kernel 2.6 erfolgreich durch.
Bei Kernel 2.4 existiert dies Problem nicht, es hat auch nichts mit uclibc zu tun.

@seife: libpng.diff und libdirectfb.patch sind nach erfolgreichem Test IMHO CVS-ready
PS: "make libpng libdirectfb" mit glibc/Kernel 2.6 ist bei mir erfolgreich durchgelaufen.
PPS: "make libpng libdirectfb" mit glibc/Kernel 2.4 ist bei mir erfolgreich durchgelaufen
Zuletzt geändert von rhabarber1848 am Dienstag 30. September 2008, 21:41, insgesamt 1-mal geändert.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Hier der aktuelle uClibc-Patch: uclibc.diff

Changelog:
- (30.09.2008): strace aus dem Patch entfernt, ist nun Teil von rules-make.diff
- (30.09.2008): speichere uClibc-locale-030818.tgz in cdk/Archive für spätere Wiederverwendung
Kleines Update für den uClibc-Patch.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

nochmal edit:

hatte den aktuellen patch doch schon drin. um 19:13 runtergeladen.

libpng.diff und uclibc.diff vertragen sich nicht:

Code: Alles auswählen

2008-09-30 19:13:06 URL:http://tuxbox-upload.wittnet.de/index.php?action=downloadfile&filename=libpng.diff&directory=Diffs [2510/2510] -> "/media/disk/tuxbox-uclibc-2.6-2008-09-30_19-09/cvspatches/libpng.diff" [1]
patching file cdk/make/contrib-libs.mk
patching file cdk/newmake.files
patching file cdk/Patches/libpng.diff
patching file cdk/rules-make
2008-09-30 19:13:06 URL:http://tuxbox-upload.wittnet.de/index.php?action=downloadfile&filename=libdirectfb.patch&directory=Diffs [1769/1769] -> "/media/disk/tuxbox-uclibc-2.6-2008-09-30_19-09/cvspatches/libdirectfb.patch" [1]
patching file cdk/Patches/libdirectfb.diff
patching file cdk/rules-make
2008-09-30 19:13:07 URL:http://tuxbox-upload.wittnet.de/index.php?action=downloadfile&filename=uclibc.diff&directory=Diffs [55946/55946] -> "/media/disk/tuxbox-uclibc-2.6-2008-09-30_19-09/cvspatches/uclibc.diff" [1]
patching file apps/tuxbox/neutrino/daemons/timerd/timermanager.cpp
patching file apps/tuxbox/neutrino/src/driver/netfile.cpp
patching file cdk/configure.ac
patching file cdk/make/automount.mk
patching file cdk/make/bluetooth.mk
patching file cdk/make/bootstrap.mk
patching file cdk/make/buildenv.mk
patching file cdk/make/busybox.mk
patching file cdk/make/contrib-apps.mk
patching file cdk/make/contrib-libs.mk
Hunk #19 FAILED at 317.
Hunk #20 succeeded at 332 (offset -1 lines).
Hunk #21 succeeded at 345 (offset -1 lines).
Hunk #22 succeeded at 383 (offset -1 lines).
Hunk #23 succeeded at 397 (offset -1 lines).
Hunk #24 succeeded at 410 (offset -1 lines).
Hunk #25 succeeded at 437 (offset -1 lines).
Hunk #26 succeeded at 452 (offset -1 lines).
Hunk #27 succeeded at 466 (offset -1 lines).
Hunk #28 succeeded at 480 (offset -1 lines).
Hunk #29 succeeded at 495 (offset -1 lines).
Hunk #30 succeeded at 510 (offset -1 lines).
Hunk #31 succeeded at 525 (offset -1 lines).
1 out of 31 hunks FAILED -- saving rejects to file cdk/make/contrib-libs.mk.rej
patching file cdk/make/development-tools.mk
patching file cdk/make/dosfstools.mk
patching file cdk/make/dvb-apps.mk
patching file cdk/make/flashable-dirs.mk
patching file cdk/make/ftpd.mk
patching file cdk/make/fun.mk
patching file cdk/make/ide-apps.mk
patching file cdk/make/java-stuff.mk
patching file cdk/make/linuxkernel.mk
patching file cdk/make/nfsserver.mk
patching file cdk/make/reduce-libs.mk
patching file cdk/make/rootutils.mk
patching file cdk/make/u-boot.mk
patching file cdk/make/upnp.mk
patching file cdk/Patches/autofs.diff
patching file cdk/Patches/busybox.config.m4
patching file cdk/Patches/libcurl.diff
patching file cdk/Patches/uclibc-0.9.28.3.config
patching file cdk/rules-archive
patching file cdk/rules-install
patching file cdk/rules-make
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

amiga23 hat geschrieben:libpng.diff und uclibc.diff vertragen sich nicht:
Das ist richtig, teste bitte libpng.diff ohne uclibc.diff, wenn von Dir das OK
kommt, kann seife den Patch ins CVS packen, dann gibt es von mir das
Update für uclibc.diff. Ich kann nicht für alle Kombinationen Patches erstellen,
auch hier kollidieren beide Patches.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

Mit Kernel 2.6 wird das Image ungefähr 700KB größer als mit Kernel 2.4. Daher bekomme ich libdirectfb und links nicht in ein image.

Bei Kernel 2.4 bekomme ich jetzt einen Fehler von lufsd
Es versucht nach /etc im host system zu installieren.

Code: Alles auswählen

(cd .libs && rm -f liblufs-sshfs.so.2 && ln -s liblufs-sshfs.so.2.0.0 liblufs-sshfs.so.2)
(cd .libs && rm -f liblufs-sshfs.so && ln -s liblufs-sshfs.so.2.0.0 liblufs-sshfs.so)
creating liblufs-sshfs.la
(cd .libs && rm -f liblufs-sshfs.la && ln -s ../liblufs-sshfs.la liblufs-sshfs.la)
make[5]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/filesystems/sshfs'
make[5]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/filesystems'
make[5]: Für das Ziel »all-am« ist nichts zu tun.
make[5]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/filesystems'
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/filesystems'
Making all in util
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/util'
if powerpc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../    -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -MT lufsmount.o -MD -MP -MF ".deps/lufsmount.Tpo" \
	  -c -o lufsmount.o `test -f 'lufsmount.c' || echo './'`lufsmount.c; \
	then mv -f ".deps/lufsmount.Tpo" ".deps/lufsmount.Po"; \
	else rm -f ".deps/lufsmount.Tpo"; exit 1; \
	fi
/bin/sh ../libtool --mode=link powerpc-linux-gnu-gcc  -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64   -o lufsmount  lufsmount.o  -lpthread 
mkdir .libs
powerpc-linux-gnu-gcc -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -o lufsmount lufsmount.o  -lpthread  
if powerpc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../    -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -MT lufsumount.o -MD -MP -MF ".deps/lufsumount.Tpo" \
	  -c -o lufsumount.o `test -f 'lufsumount.c' || echo './'`lufsumount.c; \
	then mv -f ".deps/lufsumount.Tpo" ".deps/lufsumount.Po"; \
	else rm -f ".deps/lufsumount.Tpo"; exit 1; \
	fi
/bin/sh ../libtool --mode=link powerpc-linux-gnu-gcc  -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64   -o lufsumount  lufsumount.o  -lpthread 
powerpc-linux-gnu-gcc -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -o lufsumount lufsumount.o  -lpthread  
if powerpc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../    -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -MT lufsmnt.o -MD -MP -MF ".deps/lufsmnt.Tpo" \
	  -c -o lufsmnt.o `test -f 'lufsmnt.c' || echo './'`lufsmnt.c; \
	then mv -f ".deps/lufsmnt.Tpo" ".deps/lufsmnt.Po"; \
	else rm -f ".deps/lufsmnt.Tpo"; exit 1; \
	fi
lufsmnt.c:17:1: warning: "_PATH_MOUNTED" redefined
In file included from /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdk/lib/gcc/powerpc-tuxbox-linux-uclibc/3.4.6/../../../../powerpc-tuxbox-linux-uclibc/include/mntent.h:26,
                 from lufsmnt.c:7:
/media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdk/lib/gcc/powerpc-tuxbox-linux-uclibc/3.4.6/../../../../powerpc-tuxbox-linux-uclibc/include/paths.h:54:1: warning: this is the location of the previous definition
/bin/sh ../libtool --mode=link powerpc-linux-gnu-gcc  -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64   -o lufsmnt  lufsmnt.o  -lpthread 
powerpc-linux-gnu-gcc -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -o lufsmnt lufsmnt.o  -lpthread  
if powerpc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../    -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -MT auto.sshfs.o -MD -MP -MF ".deps/auto.sshfs.Tpo" \
	  -c -o auto.sshfs.o `test -f 'auto.sshfs.c' || echo './'`auto.sshfs.c; \
	then mv -f ".deps/auto.sshfs.Tpo" ".deps/auto.sshfs.Po"; \
	else rm -f ".deps/auto.sshfs.Tpo"; exit 1; \
	fi
/bin/sh ../libtool --mode=link powerpc-linux-gnu-gcc  -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64   -o auto.sshfs  auto.sshfs.o  -lpthread 
powerpc-linux-gnu-gcc -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -o auto.sshfs auto.sshfs.o  -lpthread  
if powerpc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../    -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -MT auto.ftpfs.o -MD -MP -MF ".deps/auto.ftpfs.Tpo" \
	  -c -o auto.ftpfs.o `test -f 'auto.ftpfs.c' || echo './'`auto.ftpfs.c; \
	then mv -f ".deps/auto.ftpfs.Tpo" ".deps/auto.ftpfs.Po"; \
	else rm -f ".deps/auto.ftpfs.Tpo"; exit 1; \
	fi
/bin/sh ../libtool --mode=link powerpc-linux-gnu-gcc  -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64   -o auto.ftpfs  auto.ftpfs.o  -lpthread 
powerpc-linux-gnu-gcc -O2 -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -o auto.ftpfs auto.ftpfs.o  -lpthread  
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/util'
Making all in include
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/include'
cd .. && \
	  /bin/sh /media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/config/missing --run automake-1.7 --gnu  include/Makefile
cd .. && /bin/sh ./config.status include/Makefile 
config.status: creating include/Makefile
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/include'
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/include'
make[4]: Für das Ziel »all« ist nichts zu tun.
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/include'
Making all in man
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/man'
cd .. && \
	  /bin/sh /media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/config/missing --run automake-1.7 --gnu  man/Makefile
cd .. && /bin/sh ./config.status man/Makefile 
config.status: creating man/Makefile
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/man'
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/man'
make[4]: Für das Ziel »all« ist nichts zu tun.
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/man'
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7'
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7'
make[3]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7'
Making install in kernel
make[3]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/kernel'
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/kernel'
make[5]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/kernel'
make[5]: Für das Ziel »install-exec-am« ist nichts zu tun.
make[5]: Für das Ziel »install-data-am« ist nichts zu tun.
make[5]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/kernel'
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/kernel'
make[3]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/kernel'
Making install in lufsd
make[3]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/lufsd'
make[4]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/lufsd'
/bin/sh ../config/mkinstalldirs /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin
  /bin/sh ../libtool --mode=install /usr/bin/install -c lufsd /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin/lufsd
/usr/bin/install -c lufsd /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin/lufsd
/bin/sh ../config/mkinstalldirs /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin
 /usr/bin/install -c lussh /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin/lussh
make  install-exec-hook
make[5]: Entering directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/lufsd'
lufsd post install configuration...
/bin/sh ../config/mkinstalldirs /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin/../sbin
ln -fs /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin/lufsd /media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin/../sbin/mount.lufs
make[5]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/lufsd'
/bin/sh ../config/mkinstalldirs /etc
 /usr/bin/install -c -m 644 lufsd.conf /etc/lufsd.conf
/usr/bin/install: reguläre Datei „/etc/lufsd.conf“ kann nicht angelegt werden: Keine Berechtigung
make[4]: *** [install-configDATA] Fehler 1
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/lufsd'
make[3]: *** [install-am] Fehler 2
make[3]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7/lufsd'
make[2]: *** [install-recursive] Fehler 1
make[2]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk/lufs-0.9.7'
make[1]: *** [/media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin/lufsd] Fehler 2
make[1]: *** Datei »/media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root/bin/lufsd« wird gelöscht
make[1]: Leaving directory `/media/disk/tuxbox-uclibc-2008-09-30_20-27/tuxbox-cvs/cdk'
make: *** [/media/disk/tuxbox-uclibc-2008-09-30_20-27/dbox2/cdkflash/root] Fehler 2
Folgendes Script verwende ich zum bauen:

Code: Alles auswählen

#!/bin/bash
# You only need to change these variables #################
export kernel26=false
export uclibc=true
export ext3=false
export console_transparent=true
export base_dir=/media/disk
export archivedir=/media/disk/tuxbox/Archive
###########################################################



if [ $uclibc == true ]; then
  export location_add="-uclibc"
fi
if [ $ext3 == true ]; then
  export location_add="$location_add-ext3"
fi
if [ $kernel26 == true ]; then
  export location_add="$location_add-2.6"
fi

export location=$base_dir/tuxbox$location_add-`date +%Y-%m-%d_%H-%M`
export cvspatchdir=$location/cvspatches
export cvsdir=$location/tuxbox-cvs
export cdkdir=$cvsdir/cdk
export distridir=$location/dbox2

# Download patch from Diffs directory of tuxbox-upload and apply relative to $cvsdir
function install_patch {
  wget -nv -O $cvspatchdir/$1 "http://tuxbox-upload.wittnet.de/index.php?action=downloadfile&filename=$1&directory=Diffs" || exit
  cd $cvsdir || exit
  patch -p1 <$cvspatchdir/$1
# TKS 30SEP2008 20:27 temporarily no exit because of libpng / uclibc patch incompatibility
#|| exit

}

function install_patch_with_path {
  wget -nv -O $cvspatchdir/$1 "http://tuxbox-upload.wittnet.de/index.php?action=downloadfile&filename=$1&directory=Diffs" || exit
  cd $2 || exit
  patch <$cvspatchdir/$1 || exit
}


mkdir $location || exit
mkdir $cvsdir || exit
mkdir $cvspatchdir || exit

cd $cvsdir || exit
export CVS_RSH=ssh
BUILDDIR=$PWD
CVS=:ext:anoncvs@cvs.tuxbox.org:/cvs/tuxbox
cvs -qz9 -d $CVS co -f -r newmake -P . || exit

if [ $kernel26 == true ]; then
  cvs -qz9 update -dP -r driver_2_6_branch driver/ || exit
fi

# uclibc.diff
if [ $uclibc == true ]; then
  install_patch "uclibc.diff"
fi

# sectionsd-fix-error-paths-and-rework-messaging-locks-v1.diff
install_patch_with_path "sectionsd-fix-error-paths-and-rework-messaging-locks-v1.diff" "$cvsdir/apps/tuxbox/neutrino/daemons/sectionsd"

cd $cdkdir || exit
# No need to download the archives again and again
ln -s $archivedir || exit

./autogen.sh || exit

if [ $kernel26 == true ]; then
  export configure_add="--enable-kernel26"
else
  export configure_add="--disable-kernel26"
fi

if [ $uclibc == true ]; then
  export configure_add="$configure_add --enable-uclibc"
else
  export configure_add="$configure_add --disable-uclibc"
fi

if [ $ext3 == true ]; then
  export configure_add="$configure_add --enable-ext3"
else
  export configure_add="$configure_add --disable-ext3"
fi 

./configure $configure_add \
            --enable-german-keymaps \
            --enable-maintainer-mode \
            --prefix=$distridir \
            --enable-flashrules \
            --enable-cdkVcInfo \
            --with-checkImage=rename \
            --with-cvsdir=$cvsdir \
            --disable-ccache || exit
time make flash-neutrino-squashfs-all || exit
if [ $console_transparent == true ]; then
  sed -i 's/console_transparent=0/console_transparent=1/g' $distridir/cdkflash/root-neutrino-squashfs/etc/init.d/rcS
  sed -i 's/console_transparent=0/console_transparent=1/g' $distridir/cdkflash/root-neutrino-squashfs/etc/init.d/rcS.insmod
fi
make flash-tuxcal || exit
make flash-neutrino-squashfs-all || exit
cd $cvsdir/cdk || exit
make libdirectfb || exit
cp -Rp $distridir/cdkroot/lib/libdirect* $distridir/cdkflash/root-neutrino-squashfs/lib || exit
cp -Rp $distridir/cdkroot/lib/libfusion* $distridir/cdkflash/root-neutrino-squashfs/lib || exit
cp -Rp $distridir/cdkroot/lib/directfb* $distridir/cdkflash/root-neutrino-squashfs/lib || exit
echo "If you get an error messages here that is because this is my private stuff :-)"
cp /media/disk/tuxbox/TKS/links $distridir/cdkflash/root-neutrino-squashfs/bin || exit
chmod 755 $distridir/cdkflash/root-neutrino-squashfs/bin/links || exit
cp -Rp /media/disk/Backup/DBox2/SAGEM-2xI-SAT/var/* $distridir/cdkflash/var-neutrino || exit
rm -Rf $distridir/cdkflash/var-neutrino.jffs2
rm -Rf $distridir/cdkflash/root-neutrino.squashfs
make flash-neutrino-squashfs-all || exit
Ich teste jetzt nochmal ohne uclibc.

EDIT:
- libdirectfb.patch und libpng.diff entfernt
- uclibc.diff nur wenn uclibc==true
Zuletzt geändert von amiga23 am Dienstag 30. September 2008, 21:31, insgesamt 1-mal geändert.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

ähhh seife hat schon einiges eingecheckt. Brauche ich jetzt überhaupt noch irgendeinen patch?
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

amiga23 hat geschrieben:Mit Kernel 2.6 wird das Image ungefähr 700KB größer als mit Kernel 2.4. Daher bekomme ich libdirectfb und links nicht in ein image.
Das ist normal, Kernel 2.6 ist eben größer als Kernel 2.4.
Hast Du schon mal darüber nachgedacht, eine yadd-Umgebung aufzusetzen?
Dann kannst Du neue Binaries testen ohne jedesmal neu flashen zu müssen.
amiga23 hat geschrieben:ähhh seife hat schon einiges eingecheckt. Brauche ich jetzt überhaupt noch irgendeinen patch?
Nur, wenn Du mit uClibc kompilieren willst. uclibc.diff habe ich gerade an das aktuelle CVS angepasst.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

Ja mit yadds habe ich auch schon rumgespielt. aber dann muss ich ja irgendwo wieder einen Rechner laufen lassen. Hatte das ne zeitlang mit der Zenega und 'nem CompactFlash IDE Adapter am Start. Aber die Zenega ist einfach zu instabil. Ausserdem braucht die auch immer noch zu viel Strom.

Meine Wunschvorstellung ist es tuxmail, tuxcal, links und naim in einem Image zu haben und so keinen PC mehr zu brauchen um die Standard-Dinge zu tun.
Die DBox läuft eh immer nebenbei. TV, Radio, Internet Radio. Wenn ich jetzt auch noch, die amiga-news.de, heise.de und tagesschau.de mit links lesen kann und mit naim chatten, dann bin ich glücklich :-)

Naim hat im JtG Image rumgesponnen. Lief nicht richtig. Leider habe ich mir die VMWare von yjogol zerschossen, so daß ich an meine Experimente nicht mehr rankomme.

Links habe ich am WE mit uclibc kompiliert bekommen. Allerdings nur ohne Javascript. Reicht aber. HTTPS support geht auch nicht, denn openssl ist zu groß.

In der zweiten Box habe ich ein IDE2 Interface mit HDD und CF-Karte, da kann ich dann auch alles installieren und brauche keine extra Kiste als YADD Server.

Ich baue gerade nochmal ein uclibc image mit kernel 2.4 und eins ohne uclibc.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

aktuelle testergebnisse:

1. kernel 2.4 uclibc -> kompiliert. libdirectfb -> kompiliert -> passt zusammen ins image
2. kernel 2.4 glibc ohne uclibc.diff -> lufs problem
3. kernel 2.4 glibc mit uclibc.diff -> kompiliert. libdirectfb -> kompiliert -> passt zusammen ins image
4. kernel 2.4 uclibc ide ext3 xfs:

Code: Alles auswählen

make[3]: Leaving directory `/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/tuxbox-cvs/cdk/e2fsprogs-1.40.8/lib/ext2fs'
making all in lib/uuid
make[3]: Entering directory `/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/tuxbox-cvs/cdk/e2fsprogs-1.40.8/lib/uuid'
make[4]: Entering directory `/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/tuxbox-cvs/cdk/e2fsprogs-1.40.8/lib/uuid'
	MKDIR elfshared
make[4]: Leaving directory `/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/tuxbox-cvs/cdk/e2fsprogs-1.40.8/lib/uuid'
	CC clear.c
	CC compare.c
	CC copy.c
	CC gen_uuid.c
	CC isnull.c
	CC pack.c
	CC parse.c
	CC unpack.c
	CC unparse.c
	CC uuid_time.c
	GEN_LIB libuuid.a
	GEN_ELF_SOLIB libuuid.so.1.2
	CC tst_uuid.o
	LD tst_uuid
	LD uuid_time
../../lib/libuuid.so: undefined reference to `__tls_get_addr'
collect2: ld returned 1 exit status
make[3]: *** [uuid_time] Fehler 1
make[3]: Leaving directory `/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/tuxbox-cvs/cdk/e2fsprogs-1.40.8/lib/uuid'
make[2]: *** [all-libs-recursive] Fehler 1
make[2]: Leaving directory `/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/tuxbox-cvs/cdk/e2fsprogs-1.40.8'
make[1]: *** [/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/dbox2/cdkflash/root/sbin/mkfs.xfs] Fehler 2
make[1]: Leaving directory `/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/tuxbox-cvs/cdk'
make: *** [/media/disk/tuxbox-uclibc-ide-ext3-xfs-directfb-2008-09-30_22-55/dbox2/cdkflash/root] Fehler 2
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

Houston, wir haben ein Problem ....

hab eben ein uclibc-2.4 image geflashed.

Code: Alles auswählen

neutrino: symbol '': can't handle reloc type 0x6 in lib '/lib/libpng12.so.0'
Neutrino exited with nonzero exit status, restarting...

nhttpd: symbol '': can't handle reloc type 0x6 in lib '/lib/libpng12.so.0'

neutrino: symbol '': can't handle reloc type 0x6 in lib '/lib/libpng12.so.0'
Neutrino exited with nonzero exit status, restarting...

nhttpd: symbol '': can't handle reloc type 0x6 in lib '/lib/libpng12.so.0'

neutrino: symbol '': can't handle reloc type 0x6 in lib '/lib/libpng12.so.0'
Neutrino exited with nonzero exit status, restarting...
Ein kurz davor erzeugtes Image mit glibc hat funktioniert.

Aber mit uclibc will neutrino nicht starten.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

amiga23 hat geschrieben:Mit Kernel 2.6 wird das Image ungefähr 700KB größer als mit Kernel 2.4. Daher bekomme ich libdirectfb und links nicht in ein image.
Du könntest zusätzliche Sprachen und die Spiele aus dem Image löschen.
Das geht mit customization-Skripts:

root-neutrino-squashfs-local.sh

Code: Alles auswählen

#!/bin/sh

flashprefix=$1
buildprefix=$2

echo Hello, this is $0, flashprefix=$1 and buildprefix=$2

$2/customization/nukegames $1/root-neutrino-squashfs
$2/customization/nukelanguages $1/root-neutrino-squashfs
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

seife hat geschrieben:Frag doch mal Riker, ob er das eine Zeit lang im JTG-Snapshot testen mag (selbst ohne uclibc), der (oder besser: seine User ;)) findet immer die Bugs...
Erledigt: http://www.jackthegrabber.de/viewtopic. ... 174#107174

Wenn die Tests positiv ausfallen, fehlt Deiner Meinung noch was, um uclibc.diff ins CVS zu packen?
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: uclibc patch

Beitrag von seife »

Nö, da fehlt nichts mehr. Ich wollte es mal selbst ausprobieren, aber da komme ich wohl vorerst nicht dazu. _Das_ wird mich aber nicht davon abhalten, es einzuchecken :-)
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Hier der aktuelle uClibc-Patch: uclibc.diff

Changelog:
- (01.10.2008): Einige Patches für uClibc-0.9.28.3 vom OpenWRT-Projekt hinzugefügt:
120-more_standard_math.patch
150-portability.patch
300-let-optimized-stringops-override-default-ones.patch
301-fix-getrusage-argument-type.patch
302-fix-__libc_fcntl64-varargs-prototype.patch
303-fix-broken-__libc_open-declaration.patch
- (01.10.2008): cdk/Patches/uclibc-0.9.11.diff entfernt, überflüssig
Kleines Update
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Re: uclibc patch

Beitrag von Houdini »

Hab den mal aktualisiert. Aber viel ist da nicht mehr rausgeflogen von den trylocks.
Das ganze netfile-Konstrukt ist schon etwas undurchsichtig.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

Moin, ich glaube ihr habt meinen letzten Beitrag übersehen mit uclibc baut es zwar aber läuft dann nicht mehr:

neutrino: symbol '': can't handle reloc type 0x6 in lib '/lib/libpng12.so.0'
Neutrino exited with nonzero exit status, restarting...

nhttpd: symbol '': can't handle reloc type 0x6 in lib '/lib/libpng12.so.0'

bin eben erst nach hause gekommen aber probiere gleich nochmal ein Image zu bauen.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: uclibc patch

Beitrag von rhabarber1848 »

amiga23 hat geschrieben:Moin, ich glaube ihr habt meinen letzten Beitrag übersehen mit uclibc baut es zwar aber läuft dann nicht mehr:

neutrino: symbol '': can't handle reloc type 0x6 in lib '/lib/libpng12.so.0'
Neutrino exited with nonzero exit status, restarting...
Gesehen ja, bloss noch keine Zeit zum testen gehabt.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

Achso okay, ich dachte nur, weil ihr was davon geschrieben habt es schon im JtG Image auf die Allgemeinheit loszulassen.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: uclibc patch

Beitrag von amiga23 »

Oh man, ich kann es nicht testen, weil ich dauernd "bad magic bytes" bekomme :-(
Habe versucht dummy files anzulegen. hilft nix. Kann mir jemand einen Tipp geben wie ich das am einfachsten lösen kann? :dash:
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: uclibc patch

Beitrag von Tommy »

amiga23 hat geschrieben:Oh man, ich kann es nicht testen, weil ich dauernd "bad magic bytes" bekomme :-(
Habe versucht dummy files anzulegen. hilft nix. Kann mir jemand einen Tipp geben wie ich das am einfachsten lösen kann? :dash:
Wer da ein Lösung hätte bekäme hier Heldenstatus :lol:

Im Ernst - so viel wie Du baust wäre eine Yadd echt von Vorteil. Da kannst Du das image direkt vom "Baurechner" starten und hast das Bad Magic problem nicht. AFAIK hat yjogol doch eine fast fertige Yadd Lösung in seinem yBuild.
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Re: uclibc patch

Beitrag von mb405 »

apropos yadd
ich hab das noch nie hinbekommen :(
mit suse 10.3(bald 11.0)