Summary: | xorg-server-1.2.99.0 doesn't build | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Mateusz Kotyrba <edi15ta> |
Component: | Current packages | Assignee: | Gentoo X packagers <x11> |
Status: | RESOLVED FIXED | ||
Severity: | critical | CC: | elreydetodo, hanno, Martin.Jansa, sgtphou |
Priority: | High | ||
Version: | 2006.1 | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 129413 | ||
Attachments: |
emerge --info
add_missing_xf86OSKbd_h.patch |
Description
Mateusz Kotyrba
2006-11-04 02:51:06 UTC
Created attachment 101202 [details]
emerge --info
these are the dbus packages I have in my system: mateusz@biker ~ $ equery list dbus [ Searching for package 'dbus' in all categories among: ] * installed packages [I--] [ ~] dev-libs/dbus-glib-0.72 (0) [I--] [ ~] dev-libs/dbus-qt3-old-0.70 (0) [I--] [ ~] dev-python/dbus-python-0.71 (0) [I--] [ ~] sys-apps/dbus-0.94 (0) Looks like you're using an old version of the ebuild. Please --sync and try again. Also, dbus-0.94 might be causing issues. I'm using dbus-0.62 and it builds fine here - maybe give that a try if it still doesn't build. Let me know what fixes your problem. now it builds successfully, but there appeared another problem, probably concerning dbus-0.94. X don't start and the only message is (there is no trace of this error in /var/log/Xorg.0.log): Fatal server error: [dbus] couldn't take over org.x.config: (null) ((null)) Yeah, I haven't gotten around to fixing it yet. For now, just copy the file at /etc/X11/dbus-1/system.d/xorg-server.conf (iirc) to /etc/dbus-1/system.d/. Make sure you rebuild all your input drivers as well. I forgot to mention that although xorg-server builds, the xf86-input-keyboard-1.2.0 fails to build with such a message: i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -march=athlon-xp -mtune=athlon-xp -pipe -O2 -I/usr/include/xorg -I../src -MT lnx_KbdMap.lo -MD -MP -MF .deps/lnx_KbdMap.Tpo -c lnx_KbdMap.c -fPIC -DPIC -o .libs/lnx_KbdMap.o i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -march=athlon-xp -mtune=athlon-xp -pipe -O2 -I/usr/include/xorg -I../src -MT kbd.lo -MD -MP -MF .deps/kbd.Tpo -c kbd.c -fPIC -DPIC -o .libs/kbd.o kbd.c:45:23: error: xf86OSKbd.h: No such file or directory lnx_KbdMap.c:23:23: error: xf86OSKbd.h: No such file or directory kbd.c: In function 'KbdPreInit': kbd.c:216: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:216: error: (Each undeclared identifier is reported only once kbd.c:216: error: for each function it appears in.) kbd.c:216: error: expected ';' before 'pKbd' kbd.c:250: error: 'pKbd' undeclared (first use in this function) kbd.c:250: error: 'KbdDevRec' undeclared (first use in this function) kbd.c: In function 'KbdBell': kbd.c:358: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:358: error: expected ';' before 'pKbd' kbd.c:359: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'UpdateLeds': kbd.c:366: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:366: error: expected ';' before 'pKbd' kbd.c:369: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'KbdCtrl': kbd.c:384: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:384: error: expected ';' before 'pKbd' kbd.c:387: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'InitKBD': kbd.c:413: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:413: error: expected ';' before 'pKbd' kbd.c:451: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'KbdProc': kbd.c:475: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:475: error: expected ';' before 'pKbd' kbd.c:482: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'PostKbdEvent': kbd.c:555: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:555: error: expected ';' before 'pKbd' kbd.c:575: error: 'pKbd' undeclared (first use in this function) kbd.c:596: error: 'TransMapPtr' undeclared (first use in this function) kbd.c:596: error: expected ';' before 'map' kbd.c:597: error: 'map' undeclared (first use in this function) kbd.c:612: error: expected ';' before 'map' make[2]: *** [kbd.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... lnx_KbdMap.c:26:24: error: xf86Keymap.h: No such file or directory lnx_KbdMap.c: In function 'KbdGetMapping': lnx_KbdMap.c:43: error: 'KbdDevPtr' undeclared (first use in this function) lnx_KbdMap.c:43: error: (Each undeclared identifier is reported only once lnx_KbdMap.c:43: error: for each function it appears in.) lnx_KbdMap.c:43: error: expected ';' before 'pKbd' lnx_KbdMap.c:56: error: 'map' undeclared (first use in this function) lnx_KbdMap.c:102: error: 'pKbd' undeclared (first use in this function) lnx_KbdMap.c: In function 'readKernelMapping': lnx_KbdMap.c:256: error: 'KbdDevPtr' undeclared (first use in this function) lnx_KbdMap.c:256: error: expected ';' before 'pKbd' lnx_KbdMap.c:280: error: 'pKbd' undeclared (first use in this function) lnx_KbdMap.c:281: error: 'map' undeclared (first use in this function) lnx_KbdMap.c:526: error: 'TransMapPtr' undeclared (first use in this function) lnx_KbdMap.c:526: error: expected ';' before 'Xcalloc' make[2]: *** [lnx_KbdMap.lo] Error 1 make[2]: Leaving directory `/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0' make: *** [all] Error 2 !!! ERROR: x11-drivers/xf86-input-keyboard-1.2.0 failed. Call stack: ebuild.sh, line 1568: Called dyn_compile ebuild.sh, line 937: Called src_compile ebuild.sh, line 1261: Called x-modular_src_compile x-modular.eclass, line 333: Called x-modular_src_make x-modular.eclass, line 328: Called die !!! emake failed !!! If you need support, post the topmost build error, and the call stack if relevant. (In reply to comment #5) > Make sure you rebuild all your input drivers as well. I can't rebuild several of the new input drivers. Both xf86-input-mouse-1.2.0 and xf86-input-evdev-1.1.4 build and install, but xf86-input-keyboard-1.2.0 and xf86-input-joystick-1.1.0 fail horribly. I can understand the joystick driver, as it might not be ported yet, but the keyboard issue is strange. Here's the compiler (4.1.1-r1) output: Making all in src make[2]: Entering directory `/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0/src' if /bin/sh ../libtool --tag=CC --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -march=athlon-xp -O2 -pipe -I/usr/include/xorg -I../src -MT kbd.lo -MD -MP -MF ".deps/kbd.Tpo" -c -o kbd.lo kbd.c; \ then mv -f ".deps/kbd.Tpo" ".deps/kbd.Plo"; else rm -f ".deps/kbd.Tpo"; exit 1; fi mkdir .libs i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -march=athlon-xp -O2 -pipe -I/usr/include/xorg -I../src -MT kbd.lo -MD -MP -MF .deps/kbd.Tpo -c kbd.c -fPIC -DPIC -o .libs/kbd.o kbd.c:45:23: error: xf86OSKbd.h: No such file or directory kbd.c: In function 'KbdPreInit': kbd.c:216: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:216: error: (Each undeclared identifier is reported only once kbd.c:216: error: for each function it appears in.) kbd.c:216: error: expected ';' before 'pKbd' kbd.c:250: error: 'pKbd' undeclared (first use in this function) kbd.c:250: error: 'KbdDevRec' undeclared (first use in this function) kbd.c: In function 'KbdBell': kbd.c:358: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:358: error: expected ';' before 'pKbd' kbd.c:359: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'UpdateLeds': kbd.c:366: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:366: error: expected ';' before 'pKbd' kbd.c:369: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'KbdCtrl': kbd.c:384: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:384: error: expected ';' before 'pKbd' kbd.c:387: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'InitKBD': kbd.c:413: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:413: error: expected ';' before 'pKbd' kbd.c:451: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'KbdProc': kbd.c:475: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:475: error: expected ';' before 'pKbd' kbd.c:482: error: 'pKbd' undeclared (first use in this function) kbd.c: In function 'PostKbdEvent': kbd.c:555: error: 'KbdDevPtr' undeclared (first use in this function) kbd.c:555: error: expected ';' before 'pKbd' kbd.c:575: error: 'pKbd' undeclared (first use in this function) kbd.c:596: error: 'TransMapPtr' undeclared (first use in this function) kbd.c:596: error: expected ';' before 'map' kbd.c:597: error: 'map' undeclared (first use in this function) kbd.c:612: error: expected ';' before 'map' make[2]: *** [kbd.lo] Error 1 make[2]: Leaving directory `/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0' make: *** [all] Error 2 As you can see, xf86OSKbd.h is missing. According to the git repository, I believe that it should be found under the src directory of the tarball, but it's not there. If I add it manually, I get as far as this: Making all in src make[2]: Entering directory `/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0/src' if /bin/sh ../libtool --tag=CC --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -march=athlon-xp -O2 -pipe -I/usr/include/xorg -I../src -MT kbd.lo -MD -MP -MF ".deps/kbd.Tpo" -c -o kbd.lo kbd.c; \ then mv -f ".deps/kbd.Tpo" ".deps/kbd.Plo"; else rm -f ".deps/kbd.Tpo"; exit 1; fi i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -march=athlon-xp -O2 -pipe -I/usr/include/xorg -I../src -MT kbd.lo -MD -MP -MF .deps/kbd.Tpo -c kbd.c -fPIC -DPIC -o .libs/kbd.o if /bin/sh ../libtool --tag=CC --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -march=athlon-xp -O2 -pipe -I/usr/include/xorg -I../src -MT lnx_KbdMap.lo -MD -MP -MF ".deps/lnx_KbdMap.Tpo" -c -o lnx_KbdMap.lo lnx_KbdMap.c; \ then mv -f ".deps/lnx_KbdMap.Tpo" ".deps/lnx_KbdMap.Plo"; else rm -f ".deps/lnx_KbdMap.Tpo"; exit 1; fi i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.. -march=athlon-xp -O2 -pipe -I/usr/include/xorg -I../src -MT lnx_KbdMap.lo -MD -MP -MF .deps/lnx_KbdMap.Tpo -c lnx_KbdMap.c -fPIC -DPIC -o .libs/lnx_KbdMap.o lnx_KbdMap.c:26:24: error: xf86Keymap.h: No such file or directory lnx_KbdMap.c: In function 'KbdGetMapping': lnx_KbdMap.c:56: error: 'map' undeclared (first use in this function) lnx_KbdMap.c:56: error: (Each undeclared identifier is reported only once lnx_KbdMap.c:56: error: for each function it appears in.) lnx_KbdMap.c: In function 'readKernelMapping': lnx_KbdMap.c:281: error: 'map' undeclared (first use in this function) make[2]: *** [lnx_KbdMap.lo] Error 1 make[2]: Leaving directory `/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0' make: *** [all] Error 2 Maybe I'm missing a package with the appropriate headers? (In reply to comment #7) > and xf86-input-evdev-1.1.4 build and install, but xf86-input-keyboard-1.2.0 and > xf86-input-joystick-1.1.0 fail horribly. I can understand the joystick driver, > as it might not be ported yet, but the keyboard issue is strange. The keyboard issue is the same as in comment #6. This will be fixed in 1.2.1, or if I patch it before 1.2.1 is released. Many of the input drivers will be broken, particularly if they do any sort of motion-related operations. You're welcome to patch them yourself, or just be patient until they're ready. If you do patch them yourself, file a bug at https://bugs.freedesktop.org with the patch so that they can include it upstream. See http://gitweb.freedesktop.org/?p=xorg/driver/xf86-input-mouse.git;a=commitdiff;h=ddc0db4fe85e2b8de31ad67a6d4f97808bce018f for what might be required for such a patch. can you provide such a patch for keyboard driver ;)? Keyboard driver was actually just a mistake upstream, so it's not nearly as complicated ;) Created attachment 101238 [details, diff]
add_missing_xf86OSKbd_h.patch
This should do it, though I can't test it at the moment.
Put this patch in ${PORTDIR}/x11-drivers/xf86-input-keyboard/files/ and add the following line to the bottom of xf86-input-keyboard-1.2.0.ebuild:
PATCHES="${FILESDIR}/add_missing_xf86OSKbd_h.patch"
Run 'ebuild xf86-input-keyboard-1.2.0.ebuild digest' in the xf86-input-keyboard directory and give it a try.
thx. hmmm, patch itself works. but it doesn't eliminate the second problem (with xf86Keymap.h) which is mentioned in comment #7. (In reply to comment #12) > thx. hmmm, patch itself works. but it doesn't eliminate the second problem > (with xf86Keymap.h) which is mentioned in comment #7. > Ah, my apologies, I didn't read all the way through. Give me a chance to work through this today or tomorrow. You should probably be using the evdev driver for the keyboard anyways, as I got the impression that the keyboard driver is being mostly phased out. What exactly fixes the first reported problem? I'm having the same one with dbus-0.62-r1 *** Bug 154071 has been marked as a duplicate of this bug. *** Even with the patch I got: -c kbd.c -fPIC -DPIC -o .libs/kbd.o lnx_KbdMap.c:26:24: error: xf86Keymap.h: No such file or directory lnx_KbdMap.c: In function 'KbdGetMapping': lnx_KbdMap.c:56: error: 'map' undeclared (first use in this function) lnx_KbdMap.c:56: error: (Each undeclared identifier is reported only once lnx_KbdMap.c:56: error: for each function it appears in.) lnx_KbdMap.c: In function 'readKernelMapping': lnx_KbdMap.c:281: error: 'map' undeclared (first use in this function) make[2]: *** [lnx_KbdMap.lo] Fehler 1 make[2]: *** Warte auf noch nicht beendete Prozesse... make[2]: Leaving directory `/tmp/PORTAGE/var-tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0/src' make[1]: *** [all-recursive] Fehler 1 make[1]: Leaving directory `/tmp/PORTAGE/var-tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0' make: *** [all] Fehler 2 Fixed it by manually (In reply to comment #16) > Even with the patch I got: > -c kbd.c -fPIC -DPIC -o .libs/kbd.o > lnx_KbdMap.c:26:24: error: xf86Keymap.h: No such file or directory Yes, see comment #7 and comment #12. The file is actually in the xorg-server build, but is not installed. I'm letting upstream decide how the file should properly be included in xf86-input-keyboard. Once they've figured it out, we can fix it up here. In the meantime, feel free to copy the file in yourself. (In reply to comment #14) > What exactly fixes the first reported problem? I'm having the same one with > dbus-0.62-r1 > juest emerge --sync fixes it :]. (In reply to comment #14) > What exactly fixes the first reported problem? I'm having the same one with > dbus-0.62-r1 > just emerge --sync solves the initial problem. ps. xf86-input-keyboard compiles successfully when everything is done manually. (In reply to comment #18) > In the meantime, feel free to copy the file in yourself. Where should it be copied to, exactly? '/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0/src/'? also, how do you set up xorg.conf to use 'evdev' as suggested in Comment #13 ? (In reply to comment #21) > Where should it be copied to, exactly? > '/var/tmp/portage/x11-drivers/xf86-input-keyboard-1.2.0/work/xf86-input-keyboard-1.2.0/src/'? Yes. > also, how do you set up xorg.conf to use 'evdev' as suggested in > > Comment #13 ? 'man evdev' gives: Most users of this driver will probably be quite happy with the follow- ing for all QWERTY keyboards: Section "InputDevice" Identifier "keyboard" Driver "evdev" Option "evBits" "+1" Option "keyBits" "~1-255 ~352-511" Option "Pass" "3" ... EndSection The above/original error (with the dbus_* reference) is caused by Xnest and dbus 1.0_rc-versions. I've just reported it upstream: https://bugs.freedesktop.org/show_bug.cgi?id=8955 Workaround is to disable xnest. (In reply to comment #23) > The above/original error (with the dbus_* reference) is caused by Xnest and > dbus 1.0_rc-versions. I've just reported it upstream: > https://bugs.freedesktop.org/show_bug.cgi?id=8955 > > Workaround is to disable xnest. And it build successfully (at least for me) without -Wl,--as-needed flag. Anyone happen to test upstream master branch in git lately? Hanno's patch is already in upstream git. (In reply to comment #26) > Hanno's patch is already in upstream git. Considering this fixed then, since it's fixed upstream and will show up in the next 1.3.99.x release. |