Bug 235329 - x11-toolkits/qt5-declarative thread-related configuration error
Summary: x11-toolkits/qt5-declarative thread-related configuration error
Status: Closed Not A Bug
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-kde (group)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-01-30 18:23 UTC by Bertrand Petit
Modified: 2019-01-31 06:05 UTC (History)
2 users (show)

See Also:
tcberner: maintainer-feedback+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bertrand Petit 2019-01-30 18:23:13 UTC
On a 11.2-STABLE host, when trying to install Qt 5.12 from the ports the configuration of qt5-declarative fails with the following message:

Project ERROR: Unknown feature object thread in expression 'features.thread'.


Bellow is the failed build log:

# cd /usr/ports/devel/qt5
# make install
===>   qt5-5.12.0_1 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by qt5-5.12.0_1 for building
===>  Extracting for qt5-5.12.0_1
===>  Patching for qt5-5.12.0_1
===>  Configuring for qt5-5.12.0_1
===>  Staging for qt5-5.12.0_1
===>   qt5-5.12.0_1 depends on file: /usr/local/lib/qt5/libQt53DCore.so - not found
===>  License LGPL21 accepted by the user
===>   qt5-3d-5.12.0_1 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by qt5-3d-5.12.0_1 for building
===>  Extracting for qt5-3d-5.12.0_1
=> SHA256 Checksum OK for KDE/Qt/5.12.0/qt3d-everywhere-src-5.12.0.tar.xz.
===>  Patching for qt5-3d-5.12.0_1
===>   qt5-3d-5.12.0_1 depends on package: pkgconf>=1.3.0_1 - found
===>   qt5-3d-5.12.0_1 depends on file: /usr/local/lib/qt5/bin/moc - found
===>   qt5-3d-5.12.0_1 depends on file: /usr/local/lib/qt5/bin/qmake - found
===>   qt5-3d-5.12.0_1 depends on shared library: libassimp.so - found (/usr/local/lib/libassimp.so)
===>   qt5-3d-5.12.0_1 depends on shared library: libQt5Concurrent.so - found (/usr/local/lib/qt5/libQt5Concurrent.so)
===>   qt5-3d-5.12.0_1 depends on shared library: libQt5Core.so - found (/usr/local/lib/qt5/libQt5Core.so)
===>   qt5-3d-5.12.0_1 depends on shared library: libQt5Qml.so - not found
===>  License LGPL21 accepted by the user
===>   qt5-declarative-5.12.0_1 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by qt5-declarative-5.12.0_1 for building
===>  Extracting for qt5-declarative-5.12.0_1
=> SHA256 Checksum OK for KDE/Qt/5.12.0/qtdeclarative-everywhere-src-5.12.0.tar.xz.
===>  Patching for qt5-declarative-5.12.0_1
===>  Applying FreeBSD patches for qt5-declarative-5.12.0_1
/usr/bin/sed -i.bak '/py_out/s#python#/usr/local/bin/python2.7#g'  /usr/obj/ports/usr/ports/x11-toolkits/qt5-declarative/work/qtdeclarative-everywhere-src-5.12.0/qtdeclarative.pro
/usr/bin/sed -i.bak 's,python,/usr/local/bin/python2.7,g'  /usr/obj/ports/usr/ports/x11-toolkits/qt5-declarative/work/qtdeclarative-everywhere-src-5.12.0/src/3rdparty/masm/masm.pri
===>   qt5-declarative-5.12.0_1 depends on file: /usr/local/bin/python2.7 - found
===>   qt5-declarative-5.12.0_1 depends on package: xorgproto>=0 - found
===>   qt5-declarative-5.12.0_1 depends on file: /usr/local/lib/qt5/bin/moc - found
===>   qt5-declarative-5.12.0_1 depends on file: /usr/local/lib/qt5/bin/qmake - found
===>   qt5-declarative-5.12.0_1 depends on shared library: libGL.so - found (/usr/local/lib/libGL.so)
===>   qt5-declarative-5.12.0_1 depends on shared library: libQt5Core.so - found (/usr/local/lib/qt5/libQt5Core.so)
===>   qt5-declarative-5.12.0_1 depends on shared library: libQt5Gui.so - found (/usr/local/lib/qt5/libQt5Gui.so)
===>   qt5-declarative-5.12.0_1 depends on shared library: libQt5Network.so - found (/usr/local/lib/qt5/libQt5Network.so)
===>   qt5-declarative-5.12.0_1 depends on shared library: libQt5Sql.so - found (/usr/local/lib/qt5/libQt5Sql.so)
===>   qt5-declarative-5.12.0_1 depends on shared library: libQt5Test.so - found (/usr/local/lib/qt5/libQt5Test.so)
===>   qt5-declarative-5.12.0_1 depends on shared library: libQt5Widgets.so - found (/usr/local/lib/qt5/libQt5Widgets.so)
===>   qt5-declarative-5.12.0_1 depends on shared library: libQt5XmlPatterns.so - found (/usr/local/lib/qt5/libQt5XmlPatterns.so)
===>  Configuring for qt5-declarative-5.12.0_1
/bin/mkdir -p /usr/obj/ports/usr/ports/x11-toolkits/qt5-declarative/work/qtdeclarative-everywhere-src-5.12.0
echo 'CMAKE_MODULE_TESTS = -' > /usr/obj/ports/usr/ports/x11-toolkits/qt5-declarative/work/qtdeclarative-everywhere-src-5.12.0/.qmake.cache
echo 'QMAKE_LIBDIR_FLAGS = -L/usr/obj/ports/usr/ports/x11-toolkits/qt5-declarative/work/qtdeclarative-everywhere-src-5.12.0/lib' >> /usr/obj/ports/usr/ports/x11-toolkits/qt5-declarative/work/qtdeclarative-everywhere-src-5.12.0/.qmake.cache
Info: creating stash file /usr/obj/ports/usr/ports/x11-toolkits/qt5-declarative/work/qtdeclarative-everywhere-src-5.12.0/.qmake.stash

Running configuration tests...
Checking for C++14 make_unique()... yes
Project ERROR: Unknown feature object thread in expression 'features.thread'.
*** Error code 3

Stop.
make[2]: stopped in /usr/ports/x11-toolkits/qt5-declarative
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/graphics/qt5-3d
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/qt5


Here are the currently installed Qt5 ports:

# pkg info qt5\* cmake\*
qt5-buildtools-5.11.2
qt5-concurrent-5.12.0_2
qt5-core-5.12.0_1
qt5-dbus-5.12.0_2
qt5-gui-5.12.0_2
qt5-network-5.12.0_5
qt5-qmake-5.11.2
qt5-sql-5.12.0_2
qt5-testlib-5.12.0_2
qt5-widgets-5.12.0_2
qt5-xmlpatterns-5.12.0_2
cmake-3.13.3
Comment 1 Tobias C. Berner freebsd_committer freebsd_triage 2019-01-30 19:19:59 UTC
Moin moin

The problem lies here: 
qt5-buildtools-5.11.2
[..]
qt5-qmake-5.11.2

Never mix Qt versions. Upgrade all your ports and not selectively. Then the problem will go away :)



mfg Tobias
Comment 2 Bertrand Petit 2019-01-30 20:52:28 UTC
(In reply to Tobias C. Berner from comment #1)
Thank you very much, you are right. I did a package removal of qt5-core-5.11.2_1 but I should had removed qt5* instead.

May I suggest the addition of a version constrained dependency on qt5-buidtools and/or qt5-qmake somewhere in the qt5 dependency tree or all qt5 ports?
Comment 3 Tobias C. Berner freebsd_committer freebsd_triage 2019-01-31 05:10:56 UTC
(In reply to Bertrand Petit from comment #2)
A version constraint is not possible with the way stuff gets depended on mostly.

But why aren't you using poudriere/synth to build the packages and let pkg figure it out itself? 

If you do everything by hand (via simply calling make), then you are also required to figure out the dependency graph and upgrade it first.


mfg Tobias
Comment 4 Bertrand Petit 2019-01-31 06:05:29 UTC
(In reply to Tobias C. Berner from comment #3)
Unfortunately I'm quite short on storage resources, I would not be able to store all those packages for the three architectures I run FreBSD on.