[blfs-support] Xorg-7.7 Does not Detect Input Devices on 64-bit Build

Ken Moffat zarniwhoop at ntlworld.com
Sun Nov 3 07:54:18 PST 2013


On Sun, Nov 03, 2013 at 07:17:22AM +0000, John Frankish wrote:
> >
> >
> > It's a bit hard to diagnose when you use /usr/local/lib (it
> > *always* gets harder to build things correctly, e.g. PKG_CONFIG_PATH
> > needs to be set), and *my* modules are all in
> > /usr/lib/X11/modules/{,drivers/,input/} because I pass
> > --with-module-dir=/usr/lib/X11/modules.  But your evdev_drv seems
> > to be in the right place for your system.
> 
> Thanks for the feedback (in fact pkg-config will automatically look in /usr/local).
> The keyboard and mouse drivers are loaded from the same location as the evdev driver when I disable evdev

 I disagree.  I put a few packages into /usr/local the week
before last - dependencies for other packages I wanted to
test-build - and configure scripts failed to find the libraries
unless I exported PKG_CONFIG_DIR=/usr/local/lib/pkgconfig.  The only
places pkgconfig is guaranteed to look are /usr/share/pkgconfig and
/usr/lib/pkgconfig.

> 
> > BUT the first mentions of evdev in my log are
> >
> > [ 23798.003] (II) config/udev: Adding input device Power Button(/dev/input/event1)
> > [ 23798.004] (**) Power Button: Applying InputClass "evdev keyboard catchall"
> > [ 23798.004] (**) Power Button: Applying InputClass "keyboard-all"
> >
> > and that appears to be what causes evdev to get loaded.  I guess
> > that's because the first entry in my /usr/share/X11/xorg.conf.d is
> > 10-evdev.conf : that has the settings to match /dev/input/event* to
> > the evdev driver.  10-evdev.conf comes from the xorg-server install.
> >
> > So, I guess there are three possibilities :
> >
> > 1. 10-evdev.conf didn't get installed - I guess that might happen if
> > the build for xorg-server thought it was on a non-linux system, but
> > it seems pretty unlikely.
> 
> 10-evdev.conf is at /usr/local/share/X11/xorg.conf.d and verified to be the same as the 32-bit install, which works.

 I'm not sure I follow that : did you verify the file's contents or
it's location match ?
> 
> >2. 10-evdev.conf is somehow not in the right place (I guess it needs
> > to be in /usr/local for you, but you might find that putting it in
> > /etc/X11 works).
> 
> I tried copying 10-evdev.conf to various locations, including /etc/X11/xorg.conf.d, without success
> 
> > 3. The file is there, but your kernel is not providing
> > /dev/input/event* - probably, CONFIG_INPUT_EVDEV is not set.
> >
> CONFIG_INPUT_EVDEV is set in the kernel config and /proc/bus/input/devices shows the keyboard, mouse, etc, have been assigned event numbers.
> 
> I have the feeling that this is something to do with lib64 being hardcoded into evdev/mtdev somewhere in the 64-bit build, but ldd shows everything to be present and correct.
> 
 As long as /lib64 is a symlink to /lib, everything just works.  It
isn't strictly 'pure' (libtool complains that files seem to be
moved, which I'm sure is because of the symlink) but it works
well-enough and allows for the occasional stupid package which
insists on installing to lib64 for x86_64 [ I noticed a couple when
I was doing DESTDIR installs for the test compiles ].

> Thanks for the suggestions so far.
> 
> John

 Maybe strace would show you which places it was looking for conf
files.  I'm note sure about that (you would probably need to follow
the child processes), and the output would certainly be large.

 I forget - were both keyboard and mouse non-functional until you
added the old keyboard driver ?

ĸen
-- 
das eine Mal als Tragödie, dieses Mal als Farce



More information about the blfs-support mailing list