qt5 build on RPI2 - no uart/gpio

Post Reply
iamchrislaurie
Posts: 58
Joined: Mon Apr 27, 2015 11:27 am
Real Name: Chris Laurie

I am building QLC+ on a RPI2 using qt5 on Raspbian jessie. WIth jessie one can now install qt5 with apt-get install qtcreator. This works. Using the excellent instructions on how to build QLC+ with qt5, I got that to work as well. But the UART (and GPIO) plugins are are not built and therefore not available.

Looking at plugins.pro I can see the build of the uart (and gpio) plugins are wrapped in this test greaterThan(QT_MAJOR_VERSION,4) so it seems that QT_MAJOR_VERSION is not set to 5 when I installed qtcreator.

Since I am on a pi and I know I have qt5, I tried moving the uart SUBDIR statement outside the loop but get the following error: recipe for target 'sub-uart-make-first' failed

So I suspect there is some other stuff needed to make it work.

I know I am trying to do something outside the normal QLC+ soace, I was just hoping that someone has an idea on how I can go from here.
janosvitok
Posts: 1266
Joined: Mon Apr 13, 2015 7:05 am
Location: Bratislava, Slovakia
Real Name: Jano Svitok
Contact:

If you have instaled both qt4 and qt5 use qmake-qt5 instead of just qmake. Alternatively, I vaguely remember that there is some utility to select default qt version.
iamchrislaurie
Posts: 58
Joined: Mon Apr 27, 2015 11:27 am
Real Name: Chris Laurie

I do not have a qmake-qt5 file on my system. From the build instructions I pick up the qmake from the at5 folder: /usr/lib/arm-linux-gnueabihf/qt5/bin

This builds the app, and SEEMS to use the qt5 stuff as I see it in the compile list.

I'll try to see if I can find the utility you speak of.
janosvitok
Posts: 1266
Joined: Mon Apr 13, 2015 7:05 am
Location: Bratislava, Slovakia
Real Name: Jano Svitok
Contact:

If you call qmake directly from qt5, qmake-qt5 will not help you.

I've checked the plugins.pro file and both plugins are commented out wih #.
Did you remove those #'s and did either 'make distclean && qmake && make' or 'make qmake' ?
iamchrislaurie
Posts: 58
Joined: Mon Apr 27, 2015 11:27 am
Real Name: Chris Laurie

So far I have learned that you can set the default version of qt that qmake will use by editing this file on the raspi (jessie):

/usr/lib/arm-linux-gnueabihf/qt-default/qtchooser/@default.conf

When I tried to build qlc+ I get an error about qtserialport not being available.

Following some googled links I installed qtbase5-private-dev to try and build qtserialport myself from git://code.qt.io/qt/qtserialport.git . This in turn fails in qtserialport.cpp with this error: ISO C++ forbids declaration of 'Q_FLAG' with no type. This followed by a number of missing ';' errors.

So it seems that I do not have the correct qtserialport or I am probably doing something else wrong.
iamchrislaurie
Posts: 58
Joined: Mon Apr 27, 2015 11:27 am
Real Name: Chris Laurie

Success!! To be honest I am not 100% sure why it works now. I was unsuccessful in building qtserialport, I think. I did find an instance in one of uart sourcefiles where I thought it missed an include of the QtSerialPort and added it.

Now rebuilt qlc+ and I have a working uart output, driving a 75176 chip to give me working dmx out.
Post Reply