[SOLVED] QLC's tests do not build

Post Reply
tom
Posts: 3
Joined: Thu Mar 09, 2017 11:00 am
Real Name: Tom Mittelstädt

Hi there,
not quite sure if this is the right location to report this...

I'm trying to build qlc+ directly from git (master). Unfortunately everything in ui/test/ fails to build as every included ui_*.h seems to be missing.
example fail:

Code: Select all

cd efxpreviewarea/ && ( test -e Makefile || /usr/lib/x86_64-linux-gnu/qt5/bin/qmake /usr/local/src/qlcplus/ui/test/efxpreviewarea/efxpreviewarea.pro -o Makefile ) && make -f Makefile 
make[3]: Entering directory '/usr/local/src/qlcplus/build/ui/test/efxpreviewarea'
/usr/lib/x86_64-linux-gnu/qt5/bin/qmake -o Makefile ../../../../ui/test/efxpreviewarea/efxpreviewarea.pro
g++ -c -m64 -pipe -Werror -Wno-unused-local-typedefs -g -Wall -W -D_REENTRANT -fPIC -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_TESTLIB_LIB -DQT_XML_LIB -DQT_SCRIPT_LIB -DQT_CORE_LIB -DQT_TESTCASE_BUILDDIR='"/usr/local/src/qlcplus/build/ui/test/efxpreviewarea"' -I../../../../ui/test/efxpreviewarea -I. -I../../../../ui/src -I../../../../engine/src -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtTest -isystem /usr/include/x86_64-linux-gnu/qt5/QtXml -isystem /usr/include/x86_64-linux-gnu/qt5/QtScript -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I. -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -o efxpreviewarea_test.o ../../../../ui/test/efxpreviewarea/efxpreviewarea_test.cpp
In file included from ../../../../ui/test/efxpreviewarea/efxpreviewarea_test.cpp:26:0:
../../../../ui/src/efxpreviewarea.h:27:26: fatal error: ui_efxeditor.h: No such file or directory
 #include "ui_efxeditor.h"
                          ^
compilation terminated.
Makefile:357: recipe for target 'efxpreviewarea_test.o' failed
make[3]: *** [efxpreviewarea_test.o] Error 1
make[3]: Leaving directory '/usr/local/src/qlcplus/build/ui/test/efxpreviewarea'
The problem seems to be, that the particular .pro files try to add the include location via "INCLUDEPATH += ../../src" which seems to be resolved to "-I../../../../ui/src" (where obviously is nothing). If I replace the INCLUDEPATH directive in the .pro file with an absolute path ("INCLUDEPATH += /usr/local/src/qlcplus/build/ui/src") everything works fine.

However there seems to be a problem in the build toolchain?

Code: Select all

$ qmake --version
QMake version 3.0
Using Qt version 5.6.1 in /usr/lib/x86_64-linux-gnu
$ uname -a
Linux 4.8.0-40-generic #43-Ubuntu SMP Thu Feb 23 16:01:19 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
$ g++ --version
g++ (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005
Did you ever experience this kind of problem or know of a solution (without changing the includepath in every .pro file)?
Last edited by tom on Thu Mar 09, 2017 1:05 pm, edited 1 time in total.
janosvitok
Posts: 1325
Joined: Mon Apr 13, 2015 7:05 am
Location: Bratislava, Slovakia
Real Name: Jano Svitok
Contact:

Travis builds are ok, so the code should compile.

Can you try make distclean && qmake && make ?

How did you run qmake? I don't have any 'build' directory -- we use inplace builds. Out-of-tree builds were most probably never tested.
janosvitok
Posts: 1325
Joined: Mon Apr 13, 2015 7:05 am
Location: Bratislava, Slovakia
Real Name: Jano Svitok
Contact:

tom
Posts: 3
Joined: Thu Mar 09, 2017 11:00 am
Real Name: Tom Mittelstädt

I'm used to use a seperate build directory (mkdir build && cd build && qmake .. && make -j8)
don't have any 'build' directory -- we use inplace builds. Out-of-tree builds were most probably never tested.
Thank you for explanation, this of course solves the issue. :)

It would be nice if there was a warning eg at https://github.com/mcallegari/qlcplus/w ... t5#compile
janosvitok
Posts: 1325
Joined: Mon Apr 13, 2015 7:05 am
Location: Bratislava, Slovakia
Real Name: Jano Svitok
Contact:

I've added a note about out-of-tree builds.
Post Reply