Incorrect Qt /usr install

Dan Nicholson dbn.lists at gmail.com
Fri Jun 8 07:08:41 PDT 2007


On 6/8/07, Randy McMurchy <randy at linuxfromscratch.org> wrote:
> Dan Nicholson wrote:
>
> > No one has complained, so I'm applying this for the Qt /usr install. I
> > also checked that this works with the kernel `make xconfig' (#1522). I
> > think this is the right thing to do, and Lefteris confirmed it fixes
> > the build for doxywizard.
>
> I missed it, or I would have complained. Seems to me that
> having Qt installed in /usr/share/qt is in violation of the
> FHS. Additionally, isn't it now just a cosmetic change from
> using /opt/qt. Is there any difference any more?

The installation still goes into the actual /usr/{bin,include/qt,lib}
directories. What's added to /usr/share/qt are just symlinks. This
makes it look like the opt style install because now everything is
available from /usr/share/qt. Here's what it looks like on my system
(slightly altered to be in qt3 rather than qt).

$ ls -l /usr/share/qt3/
total 16
lrwxrwxrwx  1 root root    9 2007-05-27 11:39 bin -> ../../bin
lrwxrwxrwx  1 root root   17 2007-05-27 11:39 include -> ../../include/qt3
lrwxrwxrwx  1 root root    9 2007-05-27 11:39 lib -> ../../lib
drwxr-xr-x 62 root root 4096 2007-05-27 11:39 mkspecs
drwxr-xr-x  2 root root 4096 2007-05-27 11:39 phrasebooks
drwxr-xr-x  2 root root 4096 2007-05-27 11:39 templates
drwxr-xr-x  2 root root 4096 2007-05-27 11:39 translations
$ which qtconfig
/usr/bin/qtconfig
$ find /usr/include -name qt.h
/usr/include/qt3/qt.h

I think this is the right thing to do because Qt naturally wants to
install everything into a dedicated directory. As a consequence, tools
that use Qt expect to find everything under $QTDIR. For bin and lib,
this works fine if QTDIR=/usr. However, if you go to look in
$QTDIR/include, you won't find qt.h. If you did the opt style install,
you would find it there. What I've added makes it that way, too, since
you will now see /usr/share/qt/include/qt.h.

As for FHS compliance, it's probably not. But neither is Qt.

--
Dan



More information about the blfs-dev mailing list