I need to learn more, nothing new about that. Is there a version or something similar for QT5 to qt4-qtconfig?
"Unlike Qt4, Qt5 doesn’t ship a qtconfig utility to configure fonts, icons or styles. Instead, it will try to use the settings from the running DE. In KDE or GNOME this works well, but in other less popular DEs or WM it can lead to missing icons in Qt5 applications. One way to solve this is to fake the running desktop environment by setting XDG_CURRENT_DESKTOP=KDE or GNOME, and then using the corresponding configuration application to set the desired icon set. "
It’s unofficial, but maybe you can try http://qt-apps.org/content/show.php/Qt5+Configuration+Tool?content=168066 and act as a guinea pig reporting here your experience with it
I’m not at all sure I know what I’m doing here. Haven’t compiled anything for long enough to have forgotten how. But It would be a good thing to relearn how to compile packages. Looked at some qmake tutorials online which led me to think I should:
$ qmake qt5ct.pro Project ERROR: Could not find lrelease executable
Am I even remotely on the right track? And is there a really good tutorial for compiling QT programs?
When I get more time (when indeed?) I’ll give a try at creating an .rpm also as I need to relearn that as well.
The README file luckly suggests the building steps and specifies a post-installation step needed to setup the software. According to the README file you need qttools installed (it contains lrelease), I believe in OMLx the package name is “qt5-qttools”.
My first attempt was in OM Lx 3 which has Qt 5.5. Now I’m in 2014 (QT 5.4) where I would prefer to compile packages as it is a stable OS and:
$ qmake qt5ct.pro
No command ‘qmake’ found,
$ rpm -qa | grep qt5
So there is qt5-tools installed. Guess if I want to do this I have to do it in OL Lx 3?
README say it should work with QT 5.4. Also package qmake5 is installed which is supposed to provide qmake, or so I thought…
Edit: Apparently qmake has been renamed to qmake-qt5 for OM Lx 2014…
$ qmake-qt5 qt5ct.pro
Project ERROR: Could not find lrelease executable
Even with qt5-tools it still doesn’t find lrelease executable. Or so much stuff has been renamed to make this impossible?
I can’t try on a OMLx, so I’m just making hypothesis…
Is there a qt5-linguist-tools package? According to qt5-qttools/qt5-qttools.spec at master · OpenMandrivaAssociation/qt5-qttools · GitHub it should contain lrelease since this commit separated it from the qt5-tools package.
This is in OM Lx 3 fully updated. There is ‘qt5-linguist-tools’ but next step ‘make’ doesn’t work:
cd src/qt5ct-qtplugin/ && ( test -e Makefile || /usr/lib64/qt5/bin/qmake /home/ben79/Downloads/qt5ct-0.21/src/qt5ct-qtplugin/qt5ct-qtplugin.pro -o Makefile ) && make -f Makefile
Project MESSAGE: This project is using private headers and will therefore be tied to this specific Qt module build version.
Project MESSAGE: Running this project against other versions of the Qt modules may crash at any arbitrary point.
Project MESSAGE: This is not a bug, but a result of using Qt internals. You have been warned!
make: Entering directory ‘/home/ben79/Downloads/qt5ct-0.21/src/qt5ct-qtplugin’
/usr/lib64/qt5/bin/moc -DQT5CT_DATADIR="/usr/share" -DQT_NO_DEBUG -DQT_PLUGIN -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib64/qt5/mkspecs/linux-clang -I/home/ben79/Downloads/qt5ct-0.21/src/qt5ct-qtplugin -I/home/ben79/Downloads/qt5ct-0.21/src -I/usr/include/qt5/QtGui/5.5.1 -I/usr/include/qt5/QtGui/5.5.1/QtGui -I/usr/include/qt5 -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtCore -I/usr/include/c++/5.3.1 -I/usr/include/c++/5.3.1/x86_64-mandriva-linux-gnu -I/usr/include/c++/5.3.1/backward -I/usr/local/include -I/usr/lib64/clang/3.7.1/include -I/usr/include main.cpp -o .build/moc/main.moc
make: /usr/lib64/qt5/bin/moc: Command not found
Makefile:325: recipe for target ‘.build/moc/main.moc’ failed
make: *** [.build/moc/main.moc] Error 127
make: Leaving directory ‘/home/ben79/Downloads/qt5ct-0.21/src/qt5ct-qtplugin’
Makefile:43: recipe for target ‘sub-src-qt5ct-qtplugin-make_first’ failed
make: *** [sub-src-qt5ct-qtplugin-make_first] Error 2
I’m assuming that I’m to run ‘make’ as user (not root) in same directory as I run qmake? And if it had worked then become root and run ‘make install’?
Just tried in OM Lx 2014 also. Installed ‘qt5-linguist-tools’ and ‘qt5-linguist’. Unfortunately same result. So either we got a little problem here in OpenMandriva or I don’t know what I’m doing.
Edit: Possibly an incorrect path? There is no ‘moc’ in ‘/usr/lib64/qt5/bin/’. 'nuther package needs to be installed to provide ‘moc’?
Ah ha. Its a missing package. ‘lib64qt5svg-devel’. So I can to compile.
This is in 2014 at the moment.
Gotta go now. Will try to get this in OM Lx 3 tomorrow where it’s needed. Or I think it is needed,
And I’ve got it installed in OM Lx 3 as well:
'Won’t have time to work/play with these until tomorrow. I should make a How to for package dependencies to install, download location, and quick/easy compile instructions. It will be easy if any one else wants to test this.
We could have a package testing party!
This is broken again:
# make install qt5ct.pro cd src/qt5ct-qtplugin/ && ( test -e Makefile || /usr/lib64/qt5/bin/qmake /home/ben79/Downloads/qt5ct-0.22/src/qt5ct-qtplugin/qt5ct-qtplugin.pro -o Makefile ) && make -f Makefile install make: Entering directory '/home/ben79/Downloads/qt5ct-0.22/src/qt5ct-qtplugin' clang++ -pipe -Os -gdwarf-4 -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fPIC -flto -std=gnu++11 -Wall -W -dM -E -o .build/moc/moc_predefs.h /usr/lib64/qt5/mkspecs/features/data/dummy.cpp make: clang++: Command not found Makefile:297: recipe for target '.build/moc/moc_predefs.h' failed make: *** [.build/moc/moc_predefs.h] Error 127 make: Leaving directory '/home/ben79/Downloads/qt5ct-0.22/src/qt5ct-qtplugin' Makefile:55: recipe for target 'sub-src-qt5ct-qtplugin-install_subtargets' failed make: *** [sub-src-qt5ct-qtplugin-install_subtargets] Error 2
Installed clang and it now installs.