[Development] [Interest] Current status of the co-installation

Thiago Macieira thiago.macieira at intel.com
Tue Oct 30 02:51:10 CET 2012

On segunda-feira, 29 de outubro de 2012 15.20.20, Thiago Macieira wrote:
> * Default paths:
>  The defaults on a regular Unix or Windows installs are:
>  -bindir                $prefix/bin [unchanged]
>  -libdir                $prefix/lib [unchanged]
>  -libexecdir    $prefix/lib/qt5/libexec [new]
>  -docdir                [1]
>  -headerdir             $prefix/include
>  -importdir             $prefix/lib/qt5/imports [changed]
>  -qmldir                $prefix/lib/qt5/qml [new]
>  -datadir               $prefix/lib/qt5 [2]
>  -translationdir        $prefix/lib/qt5/translations [changed]
>  -sysconfdir    $prefix/etc/xdg [changed]
>  -examplesdir   $prefix/examples [unchanged]
>  -testsdir              $prefix/tests [unchanged]

I've updated the patches for this and consolidated into three changes only, 
plus the controversial one that adds libexecdir. I've also made some changes 
that should hopefully address some of the concerns that have been raised along 
the way.

Here are the defaults after my changes:

	-bindir			PREFIX/bin 		[unchanged]
	-headerdir		PREFIX/include	[unchanged]
	-libdir			PREFIX/lib		[unchanged]
	-archdatadir	LIBDIR/qt5 or PREFIX [new] [1]
	-libexecdir		ARCHDATADIR/bin	[new]
	-plugindir		ARCHDATADIR/plugins [1]
	-importdir		ARCHDATADIR/imports [1]
	-qmldir			ARCHDATADIR/qml	[new]
	-datadir		PREFIX/share/qt5 or PREFIX [changed] [1]
	-docdir			DATADIR/doc		[1]
	-translationdir	DATADIR/translations [1]
	-sysconfdir		PREFIX/etc/xdg	[1]
	-examplesdir	PREFIX/examples	[unchanged]
	-testsdir		PREFIX/tests	[unchanged]
	mkspecs			ARCHDATADIR/mkspecs [1]

[1] archdata and data have two defaults: either PREFIX or something else. They 
default to PREFIX whenever -prefix is $PWD, which happens on Windows and when 
you select that option (including via -developer-build). Also, when a qt.conf 
file is found, QLibraryInfo makes everything relative to that file's parent dir 
and defaults to a standard layout.

The net effect is that for most people on this list, *nothing* changes. That 
is, if you configure qtbase with -prefix $PWD, you're going to have:

	qtbase/bin		*all* executables, because $bindir = $libexecdir
	qtbase/lib			libs
	qtbase/lib/cmake	cmake files
	qtbase/lib/pkgconfig	pkg-config files
	qtbase/plugins		Qt 5 plugins
	qtbase/imports	QML 1 imports
	qtbase/qml		QML 2 imports
	qtbase/doc		Qt 5 docs
	qtbase/translations	Qt 5 translations

However, if you do a -prefix /usr configuration, then the layout will be:

	/usr/bin			User applications only (qdbus, linguist, etc.)
	/usr/lib			libs
	/usr/lib/cmake		cmake files
	/usr/lib/pkgconfig	pkg-config files
	/usr/lib/qt5/bin		Tooling applications (moc, qmake, etc.)
	/usr/lib/qt5/plugins	Qt 5 plugins
	/usr/lib/qt5/imports	QML 1 imports
	/usr/lib/qt5/qml		QML 2 imports
	/usr/share/qt5/doc	Qt 5 docs
	/usr/share/qt5/translations	Qt 5 translations

If the distro passes --libdir=/usr/lib64, then the other arch-dependent paths 
change accordingly.

Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.qt-project.org/pipermail/development/attachments/20121029/1c7e9e7e/attachment.sig>

More information about the Development mailing list