Hey guys and gals.  Recently, a couple of FHS issues have come up
regarding udev and coreutils.  They are fine as they are in LFS,
however, if they are rebuilt after attr and acl, along with glib,
libusb, and pcre (for udev), then per FHS, they should be moved to
/lib.  There is a good example in the book now of an optional move on
the PCRE page and its use by grep (installed in LFS), however, I'm
questioning that example WRT acl and attr, as they are pretty much
useless without rebuilding coreutils.

I had planned to (at very least) provide optional instructions to move
the libs, however, I believe that they should be moved unconditionally
for acl and attr.  My argument for this is that coreutils is required to
actually use the libraries, and of course, per both FHS and LSB, certain
parts of coreutils can never be installed outside of the root of
filesystem (say for instance in /usr).  The other two Randy asked me to
bring up as well, as I had also planned to provide optional instructions
(same as the previous example for PCRE).

Am I pushing too hard on the acl/attr issue?  Are the moves really
optional, and I just can't see it?  Are the optional instructions out of
line for glib, libusb, and pcre, noting that it is required if you plan
to rebuild udev (to get gudev).  I don't believe that there is any
question whether they should be moved if udev is rebuilt, just a
question regarding the method in doing so, I think...or maybe I just
wasn't clear in the bug report.

Proof (ugly, but effective), and I've obviously already moved acl, attr,
and pcre...

dj [ /var/log/llog ]$ ldd /lib/udev/*
/lib/udev/ata_id:
    linux-gate.so.1 =>  (0xb7719000)
    libc.so.6 => /lib/libc.so.6 (0xb7592000)
    /lib/ld-linux.so.2 (0xb771a000)
/lib/udev/cdrom_id:
    linux-gate.so.1 =>  (0xb78bd000)
    libc.so.6 => /lib/libc.so.6 (0xb7736000)
    /lib/ld-linux.so.2 (0xb78be000)
/lib/udev/collect:
    linux-gate.so.1 =>  (0xb7824000)
    libc.so.6 => /lib/libc.so.6 (0xb769d000)
    /lib/ld-linux.so.2 (0xb7825000)
/lib/udev/create_floppy_devices:
    linux-gate.so.1 =>  (0xb783d000)
    libc.so.6 => /lib/libc.so.6 (0xb76b6000)
    /lib/ld-linux.so.2 (0xb783e000)
/lib/udev/devices:
ldd: /lib/udev/devices: not regular file
/lib/udev/edd_id:
    linux-gate.so.1 =>  (0xb777b000)
    libc.so.6 => /lib/libc.so.6 (0xb75f4000)
    /lib/ld-linux.so.2 (0xb777c000)
/lib/udev/findkeyboards:
    not a dynamic executable
/lib/udev/firmware.sh:
    not a dynamic executable
/lib/udev/fstab_import:
    linux-gate.so.1 =>  (0xb789e000)
    libc.so.6 => /lib/libc.so.6 (0xb7717000)
    /lib/ld-linux.so.2 (0xb789f000)
/lib/udev/hid2hci:
    linux-gate.so.1 =>  (0xb7785000)
    libusb-0.1.so.4 => /usr/lib/libusb-0.1.so.4 (0xb776e000)
    libpthread.so.0 => /lib/libpthread.so.0 (0xb7753000)
    libc.so.6 => /lib/libc.so.6 (0xb75de000)
    libusb-1.0.so.0 => /usr/lib/libusb-1.0.so.0 (0xb75d1000)
    librt.so.1 => /lib/librt.so.1 (0xb75c7000)
    /lib/ld-linux.so.2 (0xb7786000)
/lib/udev/input_id:
    linux-gate.so.1 =>  (0xb7897000)
    libudev.so.0 => /lib/libudev.so.0 (0xb7877000)
    libc.so.6 => /lib/libc.so.6 (0xb7702000)
    /lib/ld-linux.so.2 (0xb7898000)
/lib/udev/keymap:
    linux-gate.so.1 =>  (0xb7715000)
    libc.so.6 => /lib/libc.so.6 (0xb758e000)
    /lib/ld-linux.so.2 (0xb7716000)
/lib/udev/keymaps:
ldd: /lib/udev/keymaps: not regular file
/lib/udev/modem-modeswitch:
    linux-gate.so.1 =>  (0xb788b000)
    libusb-0.1.so.4 => /usr/lib/libusb-0.1.so.4 (0xb7874000)
    libpthread.so.0 => /lib/libpthread.so.0 (0xb7859000)
    libc.so.6 => /lib/libc.so.6 (0xb76e4000)
    libusb-1.0.so.0 => /usr/lib/libusb-1.0.so.0 (0xb76d7000)
    librt.so.1 => /lib/librt.so.1 (0xb76cd000)
    /lib/ld-linux.so.2 (0xb788c000)
/lib/udev/path_id:
    linux-gate.so.1 =>  (0xb776f000)
    libc.so.6 => /lib/libc.so.6 (0xb75e8000)
    /lib/ld-linux.so.2 (0xb7770000)
/lib/udev/pci-db:
    linux-gate.so.1 =>  (0xb78d6000)
    libc.so.6 => /lib/libc.so.6 (0xb774f000)
    /lib/ld-linux.so.2 (0xb78d7000)
/lib/udev/rule_generator.functions:
ldd: warning: you do not have execution permission for
`/lib/udev/rule_generator.functions'
    not a dynamic executable
/lib/udev/rules.d:
ldd: /lib/udev/rules.d: not regular file
/lib/udev/scsi_id:
    linux-gate.so.1 =>  (0xb7788000)
    libc.so.6 => /lib/libc.so.6 (0xb7601000)
    /lib/ld-linux.so.2 (0xb7789000)
/lib/udev/udev-acl:
    linux-gate.so.1 =>  (0xb785b000)
    libacl.so.1 => /lib/libacl.so.1 (0xb7841000)
    libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb7780000)
    libc.so.6 => /lib/libc.so.6 (0xb760b000)
    libattr.so.1 => /lib/libattr.so.1 (0xb7606000)
    libpcre.so.0 => /lib/libpcre.so.0 (0xb75d3000)
    /lib/ld-linux.so.2 (0xb785c000)
/lib/udev/usb-db:
    linux-gate.so.1 =>  (0xb77cb000)
    libc.so.6 => /lib/libc.so.6 (0xb7644000)
    /lib/ld-linux.so.2 (0xb77cc000)
/lib/udev/usb_id:
    linux-gate.so.1 =>  (0xb7728000)
    libc.so.6 => /lib/libc.so.6 (0xb75a1000)
    /lib/ld-linux.so.2 (0xb7729000)
/lib/udev/v4l_id:
    linux-gate.so.1 =>  (0xb778a000)
    libc.so.6 => /lib/libc.so.6 (0xb7603000)
    /lib/ld-linux.so.2 (0xb778b000)
/lib/udev/write_cd_rules:
    not a dynamic executable
/lib/udev/write_net_rules:
    not a dynamic executable
dj [ /var/log/llog ]$

-- DJ Lucas


-- 
This message has been scanned for viruses and
dangerous content, and is believed to be clean.

-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to