[KDE/Mac] QStandardPaths possible solution
René J.V. Bertin
rjvbertin at gmail.com
Sun Jan 11 12:37:38 UTC 2015
On Sunday January 11 2015 16:11:21 Ian Wadham wrote:
> > I am calling configure with the options
> >
> >> -prefix ${qt_dir} \
> >> -docdir ${qt_docs_dir} \
> >> -headerdir ${qt_includes_dir} \
> >> -plugindir ${qt_plugins_dir} \
> >> -importdir ${qt_imports_dir} \
> >> -qmldir ${qt_qml_dir} \
> >> -datadir ${qt_data_dir} \
> >> -libdir ${qt_frameworks_dir} \
> >> -bindir ${qt_bins_dir} \
> >> -translationdir ${qt_translations_dir} \
> >> -sysconfdir ${qt_sysconf_dir} \
> >> -examplesdir ${qt_examples_dir} \
> >> -testsdir ${qt_tests_dir} \
> >> -hostdatadir ${qt_host_data_dir}
> >
> > (I only changed the paths passed in, not the options used). Is there another path specification option that can be used to get the path /opt/local/share (${prefix}/share) where it belongs??
>
> I do not know what there is in Qt 5's install processes, but, if all else fails:-
To be a bit less cryptic, this is the configure call I'm using:
-----------
#> configure -prefix /opt/local/libexec/qt5 \
-docdir /opt/local/share/doc/qt5 \
-headerdir /opt/local/include/qt5 \
-plugindir /opt/local/share/qt5/plugins \
-importdir /opt/local/share/qt5/imports \
-qmldir /opt/local/share/qt5/qml \
-datadir /opt/local/share/qt5 \
-libdir /opt/local/libexec/qt5/Library/Frameworks \
-bindir /opt/local/libexec/qt5/bin \
-translationdir /opt/local/share/qt5/translations \
-sysconfdir /opt/local/etc/qt5 \
-examplesdir /opt/local/share/qt5/examples \
-testsdir /opt/local/share/qt5/tests \
-hostdatadir /opt/local/share/qt5 \
-v -release -opensource -confirm-license -shared -process -no-mtdev \
-no-harfbuzz -openssl-linked -no-xinput2 -no-xcb-xlib -no-libudev \
-no-egl -make libs -make tools -nomake examples -nomake tests -verbose \
-nis -cups -iconv -no-evdev -icu -fontconfig -no-pch -dbus-linked \
-no-xcb -glib -directfb -no-linuxfb -no-kms -framework -optimized-qmake \
-no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc \
-no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-tds \
-platform macx-clang -no-openvg -force-debug-info -no-strip
-----------
Giving
-----------
#> qtdiag -qt=qt5
Qt 5.3.2 (Jan 10 2015, Clang 6.0 (clang-600.0.56) (Apple), 64 bit, release build) on "cocoa" little endian/
Mac OS version: 0xb
Library info:
PrefixPath: /opt/local/libexec/qt5
DocumentationPath: /opt/local/share/doc/qt5
HeadersPath: /opt/local/include/qt5
LibrariesPath: /opt/local/libexec/qt5/Library/Frameworks
LibraryExecutablesPath: /opt/local/libexec/qt5/libexec
BinariesPath: /opt/local/libexec/qt5/bin
PluginsPath: /opt/local/share/qt5/plugins
ImportsPath: /opt/local/share/qt5/imports
Qml2ImportsPath: /opt/local/share/qt5/qml
ArchDataPath: /opt/local/libexec/qt5
DataPath: /opt/local/share/qt5
TranslationsPath: /opt/local/share/qt5/translations
ExamplesPath: /opt/local/share/qt5/examples
TestsPath: /opt/local/share/qt5/tests
Standard paths [*...* denote writable entry]:
DesktopLocation: "Desktop" */Users/bertin/Desktop*
DocumentsLocation: "Documents" */Users/bertin/Documents*
FontsLocation: "Fonts" */System/Library/Fonts*
ApplicationsLocation: "Applications" */Applications*
MusicLocation: "Music" */Users/bertin/Music*
MoviesLocation: "Movies" */Users/bertin/Movies*
PicturesLocation: "Pictures" */Users/bertin/Pictures*
TempLocation: "TemporaryItems" */var/folders/j1/1439ppj08xj8h6006s6drbq00000gs/T*
HomeLocation: "Home" */Users/bertin*
DataLocation: "Application Support" */Users/bertin/Library/Application Support/Qt Project/qtdiag* /Library/Application Support/Qt Project/qtdiag /opt/local/libexec/qt5/share/Qt Project/qtdiag /opt/local/libexec/qt5/bin/
CacheLocation: "Caches" */Users/bertin/Library/Caches/Qt Project/qtdiag* /Library/Caches/Qt Project/qtdiag
GenericDataLocation: "Application Support" */Users/bertin/Library/Application Support* /opt/local/libexec/qt5/share /Library/Application Support
RuntimeLocation: "Application Support" */Users/bertin/Library/Application Support*
ConfigLocation: "Preferences" */Users/bertin/Library/Preferences* /opt/local/libexec/qt5/config
DownloadLocation: "Documents" */Users/bertin/Documents*
GenericCacheLocation: "Caches" */Users/bertin/Library/Caches* /Library/Caches
GenericConfigLocation: "Preferences" */Users/bertin/Library/Preferences* /opt/local/libexec/qt5/config
-----------
This gives me a /opt/local/libexec/qt5 containing only /opt/local/libexec/qt5/libexec/QtWebProcess which I cannot deduce from configure options OTHER THAN -prefix . There's also a /opt/local/libexec/qt5/lib, but that one is constructed in the post-destroot phase :)
So, I'm not using -archdatadir, -libexecdir nor -hostbindir and -hostlibdir which I think are not of interest.
What is archdatadir used for?
SUpposing we want QtWebProcess where it is currently put, I suppose I can add -libexecdir /opt/local/libexec/qt5/libexec ?
If I do that, and possibly set -archdatadir, can I get away with setting -prefix to /opt/local and still get the correct layout? This appears to be what Linux (Ubuntu) does, where the binary Qt stuff ends up in /usr/lib/x86_64*/qt{4,5} and /usr/lib/i386*/qt{4,5}
In other words, what is -prefix still used for if all the other dir specs have been set?
Thanks,
René
More information about the kde-mac
mailing list