I have a G3 iBook 800 MHz. emerge DirectFB-0.9.24 crashes at keyboard.c: powerpc-unknown-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include -I../../lib -I../../lib -I../../src -I../../systems -D_REENTRANT -I/usr/include/libmpeg3 -Wall -O3 -ffast-math -pipe -O2 -pipe -mcpu=750 -fsigned-char -mpowerpc-gfxopt -D_GNU_SOURCE -Werror-implicit-function-declaration -c keyboard.c -fPIC -DPIC -o .libs/keyboard.o In file included from /usr/include/linux/keyboard.h:14, from keyboard.c:42: /usr/include/linux/wait.h: In function `wait_on_bit': /usr/include/linux/wait.h:376: error: implicit declaration of function `test_bit' /usr/include/linux/wait.h: In function `wait_on_bit_lock': /usr/include/linux/wait.h:400: error: implicit declaration of function `test_and_set_bit' make[3]: *** [keyboard.lo] Error 1 make[3]: Leaving directory `/var/tmp/portage/DirectFB-0.9.24/work/DirectFB-0.9.24/inputdrivers/keyboard' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/DirectFB-0.9.24/work/DirectFB-0.9.24/inputdrivers' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/DirectFB-0.9.24/work/DirectFB-0.9.24' make: *** [all-recursive-am] Error 2 !!! ERROR: dev-libs/DirectFB-0.9.24 failed. # emerge info Portage 2.1_pre2 (default-linux/ppc/2004.1, gcc-3.4.4, glibc-2.3.5-r0, 2.6.14.2 ppc) ================================================================= System uname: 2.6.14.2 ppc 750FX Gentoo Base System version 1.12.0_pre12 distcc 2.18.3 powerpc-unknown-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] dev-lang/python: 2.2.2, 2.3.5, 2.4.1-r1 sys-apps/sandbox: 1.2.13 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="ppc ~ppc" AUTOCLEAN="yes" CBUILD="powerpc-unknown-linux-gnu" CFLAGS="-O2 -pipe -mcpu=750 -fsigned-char -mpowerpc-gfxopt" CHOST="powerpc-unknown-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d" CXXFLAGS="-O2 -pipe -mcpu=750 -fsigned-char -mpowerpc-gfxopt" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ http://gd.tuwien.ac.at/opsys/linux/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="ppc X aac aalib alsa apache2 apm arts audiofile berkdb bitmap-fonts blas bzip2 bzlib caps cdparanoia clisp crypt cups curl dba directfb divx4linux dvd emboss encode exif expat fam fbcon ffmpeg flac font-server fortran ftp gcj gd gdbm gif glut gmp gphoto2 gpm gstreamer gtk gtk2 guile hal icq idn imagemagick imlib innodb ipv6 jack jack-tmpfs java javascript jpeg junit kde kdeenablefinal ladcca ladspa lcms libcaca libwww live lzo mad maildir matroska mhash mikmod mime mng monkey motif mp3 mpeg musicbrainz mysql ncurses nls nptl nptlonly objc offensive ogg oggvorbis openal opengl oss pam pcre pdflib perl png povray python qt readline recode samba sasl sdl slang sndfile speex spell ssl tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts udev unicode usb vorbis wmf xine xml xml2 xmms xv xvid zlib elibc_glibc kernel_linux userland_GNU video_cards_radeon" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
It causes that CFLAGS has -Werror-implicit-function-declaration option and /usr/include/linux/wait.h has implicit declaration of function. One of easy (ONLY compilation problem fix, I guess) work-aroud ways is removing -Werror-implicit-function-declaration option form CFLAGS, IMHO. So do like that, before do make DirecfFB: cd DIRECTFB_SRC_DIR ; sed -i -e 's/-Werror-implicit-function-declaration//g' `find . -name Makefile` ; But actually, linux-headers should be fixed for that, I think.
I have checked this compilation error with two cases. * When I have tried with sys-kernel/linux-headers 2.6.11-r2, then it crashed at keyboard.c. * When I have tried with sys-kernel/linux-headers 2.6.11-r4, then it did not crash. But I have no checking that it work fine or not.
(In reply to comment #2) > But I have no checking that it work fine or not. Checked. XDirectFB with dev-libs/DirectFB as current snapshot(20060121) works fine. The headers issues are fixed by upgrading to sys-kernel/linux-headers-2.6.11-r4. This bug should be closed, I think.
Yes, it is fixed. Thanks!