Build of branch release/20.08 with QtCreator fails on Ubuntu 18.04.4

Robert Hairgrove code at roberthairgrove.com
Fri Aug 7 12:07:32 BST 2020


I have Qt 5.12.9 with Qt Creator 4.12.2 installed which I am using for 
development work.

When I last cloned the master branch, I was able to build everything 
after pointing cmake to the right directory for Qt5WebKitWidgets and 
after the fix for failing dependency on ThreadWeaver was done. I wanted 
to build from the latest sources, so I pulled the branch release/20.08 
and tried to build it.

Now I am getting these errors which have to do with kdev5-php/parser/ 
and kdevphpparser (build output is shown below). Has anyone seen this 
before?

==== start build output ====================================
12:47:59: Running steps for project umbrello...
12:47:59: Starting: "/usr/bin/cmake" --build . --target all
Scanning dependencies of target pofiles-f989ce3e90ecc63bbd2489347c33ce89
[  0%] Generating mo...
[  0%] Built target pofiles-f989ce3e90ecc63bbd2489347c33ce89
Scanning dependencies of target tsfiles-f989ce3e90ecc63bbd2489347c33ce89
[  0%] Generating ts...
[  0%] Built target tsfiles-f989ce3e90ecc63bbd2489347c33ce89
Scanning dependencies of target KDevTests_autogen
[  0%] Automatic MOC and RCC for target KDevTests
[  0%] Built target KDevTests_autogen
Scanning dependencies of target KDevTests
[  0%] Building CXX object 
lib/kdevplatform/CMakeFiles/KDevTests.dir/tests/testcore.cpp.o
[  0%] Building CXX object 
lib/kdevplatform/CMakeFiles/KDevTests.dir/tests/autotestshell.cpp.o
[  0%] Building CXX object 
lib/kdevplatform/CMakeFiles/KDevTests.dir/KDevTests_autogen/mocs_compilation.cpp.o
[  0%] Linking CXX static library libKDevTests.a
[  0%] Built target KDevTests
Scanning dependencies of target kdevphpparser_autogen
[  0%] Automatic MOC and RCC for target kdevphpparser
[  0%] Built target kdevphpparser_autogen
[  0%] Generating phptokentype.h, phpdebugvisitor.h, phptokentext.h, 
phpast.h, phpparser.h, phpparser.cpp, phpvisitor.h, phpvisitor.cpp, 
phpdefaultvisitor.h, phpdefaultvisitor.cpp
** WARNING found FIRST/FOLLOW conflict in elseifList:
	Rule ``(#elseifListItem=elseifListItem)*''
	Terminals [
		ELSEIF: conflicts with the FIRST set of:
		(#elseifListItem=elseifListItem)*,
		(#newElseifListItem=newelseifListItem)*,
		newElseifList,
		elseifList=elseifList,
	]

** WARNING found FIRST/FIRST conflict in topStatement:
	Rule ``(statement=statement | 
functionDeclaration=functionDeclarationStatement)''
	Terminals [
		FUNCTION
	]

** WARNING found FIRST/FIRST conflict in statement:
	Rule ``(LBRACE try/recover(statements=innerStatementList) RBRACE | IF 
LPAREN ifExpr=expr RPAREN (COLON statements=innerStatementList 
newElseifList newElseSingle ENDIF semicolonOrCloseTag | 
ifStatement=statement elseifList=elseifList elseSingle=elseSingle) | 
WHILE LPAREN whileExpr=expr RPAREN whileStatement=whileStatement | FOR 
LPAREN forExpr1=forExpr SEMICOLON forExpr2=forExpr SEMICOLON 
forExpr3=forExpr RPAREN forStatement=forStatement | SWITCH LPAREN 
swtichExpr=expr RPAREN switchCaseList=switchCaseList | FOREACH LPAREN 
try/rollback(foreachVar=variable AS foreachVarAsVar=foreachVariable) 
catch(foreachExpr=expr AS foreachExprAsVar=variable) (DOUBLE_ARROW 
foreachVariable=foreachVariable | 0) RPAREN 
foreachStatement=foreachStatement | DECLARE LPAREN 
declareItem=declareItem (COMMA declareItem=declareItem)* RPAREN 
declareStatement | SEMICOLON | TRY LBRACE 
try/recover(statements=innerStatementList) RBRACE (#catches=catchItem)* 
(FINALLY LBRACE finallyBody=innerStatementList RBRACE | 0) | UNSET 
LPAREN #unsetVariables=variable (COMMA #unsetVariables=variable)* RPAREN 
semicolonOrCloseTag | expr=expr semicolonOrCloseTag | DO 
doStatement=statement WHILE LPAREN whileExpr=expr RPAREN 
semicolonOrCloseTag | BREAK (breakExpr=expr | 0) semicolonOrCloseTag | 
CONTINUE (continueExpr=expr | 0) semicolonOrCloseTag | RETURN 
(returnExpr=expr | 0) semicolonOrCloseTag | GLOBAL #globalVars=globalVar 
(COMMA #globalVars=globalVar)* semicolonOrCloseTag | STATIC 
#staticVars=staticVar (COMMA #staticVars=staticVar)* semicolonOrCloseTag 
| ECHO #echoExprs=expr (COMMA #echoExprs=expr)* semicolonOrCloseTag | 
THROW throwExpr=expr semicolonOrCloseTag | CLOSE_TAG | OPEN_TAG | 
OPEN_TAG_WITH_ECHO expr=expr semicolonOrCloseTag | INLINE_HTML | CONST 
#consts=constantDeclaration (COMMA #consts=constantDeclaration)* 
SEMICOLON | USE #useNamespace=useNamespace (COMMA 
#useNamespace=useNamespace)* SEMICOLON | GOTO gotoLabel=STRING SEMICOLON 
| gotoTarget=STRING COLON)''
	Terminals [
		STRING
	]

** WARNING found FIRST/FIRST conflict in classNameReference:
	Rule ``(identifier=namespacedIdentifier | staticIdentifier=STATIC | 
dynamicClassNameReference=dynamicClassNameReference)''
	Terminals [
		BACKSLASH,
		STRING
	]

** WARNING found FIRST/FIRST conflict in varExpression:
	Rule ``(0 variable=variable | 0 newObject=varExpressionNewObject | 
varExpressionNormal=varExpressionNormal)''
	Terminals [
		DOLLAR,
		NEW,
		BACKSLASH,
		STRING,
		VARIABLE
	]

** WARNING found FIRST/FIRST conflict in varExpressionNormal:
	Rule ``(iife=iifeSyntax | LPAREN 
try/rollback(newObject=varExpressionNewObject RPAREN 
(#variableProperties=instantiationAccess)*) catch(expression=expr 
RPAREN))''
	Terminals [
		LPAREN
	]

** WARNING found FIRST/FIRST conflict in variableProperty:
	Rule ``(LBRACE variable=variable RBRACE | 
objectProperty=objectProperty)''
	Terminals [
		LBRACE
	]

** WARNING found FIRST/FIRST conflict in encapsVar:
	Rule ``(STRING_VARNAME arrayIndex=arrayIndexSpecifier RBRACE | 
expr=expr RBRACE)''
	Terminals [
		STRING_VARNAME
	]

8 conflicts total: 1 FIRST/FOLLOW conflicts, 7 FIRST/FIRST conflicts.
Scanning dependencies of target kdevphpparser
[  0%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/kdevphpparser.dir/phpparser.cpp.o
[  0%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/kdevphpparser.dir/phpvisitor.cpp.o
[  1%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/kdevphpparser.dir/phpdefaultvisitor.cpp.o
[  1%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/kdevphpparser.dir/phplexer.cpp.o
[  1%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/kdevphpparser.dir/parsesession.cpp.o
[  1%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/kdevphpparser.dir/parserdebug.cpp.o
[  1%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/kdevphpparser.dir/kdevphpparser_autogen/mocs_compilation.cpp.o
[  2%] Linking CXX static library libkdevphpparser.a
[  2%] Built target kdevphpparser
Scanning dependencies of target php-parser_autogen
[  2%] Automatic MOC and RCC for target php-parser
[  2%] Built target php-parser_autogen
Scanning dependencies of target php-parser
[  3%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/php-parser.dir/main.cpp.o
[  3%] Building CXX object 
lib/kdev5-php/parser/CMakeFiles/php-parser.dir/php-parser_autogen/mocs_compilation.cpp.o
[  3%] Linking CXX executable php-parser
//usr/lib/x86_64-linux-gnu/libKF5Declarative.so.5: undefined reference 
to `QQmlPropertyMap::init(QMetaObject const*)@Qt_5'
//usr/lib/x86_64-linux-gnu/libKF5Declarative.so.5: undefined reference 
to `QQmlPropertyMap::allocatePrivate()@Qt_5'
collect2: error: ld returned 1 exit status
make[2]: *** [lib/kdev5-php/parser/php-parser] Error 1
make[1]: *** [lib/kdev5-php/parser/CMakeFiles/php-parser.dir/all] Error 
2
make: *** [all] Error 2
lib/kdev5-php/parser/CMakeFiles/php-parser.dir/build.make:122: recipe 
for target 'lib/kdev5-php/parser/php-parser' failed
CMakeFiles/Makefile2:433: recipe for target 
'lib/kdev5-php/parser/CMakeFiles/php-parser.dir/all' failed
Makefile:140: recipe for target 'all' failed
12:48:14: The process "/usr/bin/cmake" exited with code 2.
Error while building/deploying project umbrello (kit: Desktop Qt 5.12.9 
GCC 64bit)
When executing step "CMake Build"
12:48:14: Elapsed time: 00:15.
========== end build output ======================

Also, I am not sure how serious the warnings about FIRST/FOLLOW etc. 
are.

(Do we even need QML things at all for this?)


More information about the umbrello-devel mailing list