[Qbs] URGENT: Broken qbs package version in Fedora Rawhide
Jake Petroules
Jake.Petroules at qt.io
Fri Dec 8 17:45:40 CET 2017
You need to set the autotest profile. Set the QBS_AUTOTEST_PROFILE environment variable to the name of the profile generated by qbs-setup-qt.
See https://anonscm.debian.org/cgit/pkg-kde/qt/qbs.git/tree/debian/rules for guidance.
Note that they simply create a qbs_autotests profile; Qbs no longer hardcodes that profile name, you need to set QBS_AUTOTEST_PROFILE in order to let it find it.
Also, please send future inquiries to the Qbs public mailing list.
Thanks!
> On Dec 8, 2017, at 6:13 AM, Sandro Mani <manisandro at gmail.com> wrote:
>
> Hi Jake
>
> Since you've kindly helped me in the past with the qbs packaging, I wonder if you could help me with the following issue: I'm updating qbs to 1.10 on Fedora, and am hitting test failures when running tst_api which I suppose are down to some configuration issue but I can't figure out what's missing. I used to run the tests as follows:
>
> export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
> %{buildroot}/%{_bindir}/%{name} setup-qt %{_bindir}/qmake-qt5 qt
> %{buildroot}/%{_bindir}/%{name} config profiles.qbs_autotests.baseProfile qt
> make check
>
> which though results in many failures like
>
> FAIL! : TestApi::addQObjectMacroToCppFile() '!errorInfo.hasError()' returned FALSE. (/home/sandro/rpmbuild/BUILD/qbs-src-1.10.0/share/qbs/imports/qbs/base/QtApplication.qbs:34:5 Dependency 'Qt.core' not found for product 'add-qobject-macro-to-cpp-file'.
> Please create a Qt profile using the qbs-setup-qt tool if you haven't already done so.)
> Loc: [tst_api.cpp(176)]
>
> Digging a bit I discovered the qbs-setup-toolchains and qbs-setup-qt commands, so I changed the test setup to
>
> export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
> %{buildroot}/%{_bindir}/qbs-setup-toolchains --detect
> %{buildroot}/%{_bindir}/qbs-setup-qt --detect
> make check
>
> but I still get the failures above. Any ideas? FWIW, the full build spec is attached.
>
> (Also attached is a patch I need to get the blackbox lexyacc test to pass, without it fails due to "error: ‘yylval’ undeclared".)
>
> Thanks
> Sandro
>
> On 01.08.2017 00:49, Sandro Mani wrote:
>> Hi Jake
>>
>> Uhm not sure if I formulated my question correctly: I currently have the qbs-1.8.1 package we discussed. I now wanted to update to the qt-creator-4.4.0-beta1 (we have always updated to the latest version, even pre-release, in the Fedora master branch aka rawhide). But the problem is that qt-creator-4.4.0-beta1 cannot be built against qbs-1.8.1, it requires what will become 1.9.0. So I was just wondering whether separate qbs releases were planned matching what the latest qt-creator release requires. If not, no problem, I'll just package the git snapshot required.
>>
>> Thanks
>> Sandro
>>
>>
>> On 01.08.2017 00:44, Jake Petroules wrote:
>>> Hi Sandro,
>>>
>>> Tagged releases of Qt Creator will always depend on tagged releases of Qbs. We currently have no plans to do beta releases of Qbs, but might in the future.
>>>
>>> As a Linux packager, you should for the most part completely ignore the submodule. Pretend it doesn't exist.
>>>
>>> If you're talking about a separate qt-creator-git package of sorts (separate from the main qbs and qt-creator packages), then I'm afraid I have no specific advice for you.
>>>
>>>> On Jul 31, 2017, at 1:44 PM, Sandro Mani <manisandro at gmail.com> wrote:
>>>>
>>>> Hi Jake
>>>>
>>>> I was just looking at updating to qt-creator-4.4.0-beta1 and build it against the separate qbs package, and noticed that qt-creator bundles (and depends on) an unreleased qbs snapshot. I can clearly easily just package the latest git snapshot of qbs, but taking git snapshots is always a bit risky. Ideally development versions of qbs would be released in parallel with qt-creator. Are there any plans to do this? Or how would you recommend dealing with this situation?
>>>>
>>>> Thanks
>>>> Sandro
>>>>
>>>>
>>>> On 31.07.2017 12:52, Sandro Mani wrote:
>>>>> Hi Jake
>>>>>
>>>>> With the patch now I get a failure + timeout, see below. Any ideas?
>>>>>
>>>>> Thanks
>>>>> Sandro
>>>>>
>>>>>
>>>>> ********* Start testing of TestBlackbox *********
>>>>> Config: Using QtTest library 5.9.1, Qt 5.9.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 7.1.1 20170718 (Red Hat 7.1.1-6))
>>>>> PASS : TestBlackbox::initTestCase()
>>>>> PASS : TestBlackbox::alwaysRun(Transformer)
>>>>> FAIL! : TestBlackbox::alwaysRun(Rule) Compared values are not the same
>>>>> Actual (runQbs(params)): 1
>>>>> Expected (0) : 0
>>>>> Loc: [tst_blackbox.cpp(308)]
>>>>>
>>>>> ========= Received signal, dumping stack ==============
>>>>> GNU gdb (GDB) Fedora 8.0-17.fc27
>>>>> Copyright (C) 2017 Free Software Foundation, Inc.
>>>>> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
>>>>> This is free software: you are free to change and redistribute it.
>>>>> There is NO WARRANTY, to the extent permitted by law. Type "show copying"
>>>>> and "show warranty" for details.
>>>>> This GDB was configured as "x86_64-redhat-linux-gnu".
>>>>> Type "show configuration" for configuration details.
>>>>> For bug reporting instructions, please see:
>>>>> <http://www.gnu.org/software/gdb/bugs/>.
>>>>> Find the GDB manual and other documentation resources online at:
>>>>> <http://www.gnu.org/software/gdb/documentation/>.
>>>>> For help, type "help".
>>>>> Type "apropos word" to search for commands related to "word".
>>>>> Attaching to process 18640
>>>>> [New LWP 18642]
>>>>> [Thread debugging using libthread_db enabled]
>>>>> Using host libthread_db library "/usr/lib64/libthread_db.so.1".
>>>>> 0x00007f1b410a6e66 in ppoll () from /usr/lib64/libc.so.6
>>>>> Missing separate debuginfos, use: dnf debuginfo-install bzip2-libs-1.0.6-22.fc26.x86_64 freetype-2.8-3.fc27.x86_64 glib2-2.53.4-2.fc27.x86_64 glibc-2.25.90-29.fc27.x86_64 graphite2-1.3.10-1.fc27.x86_64 harfbuzz-1.4.7-1.fc27.x86_64 libX11-1.6.5-2.fc27.x86_64 libXau-1.0.8-7.fc26.x86_64 libXext-1.3.3-5.fc26.x86_64 libgcc-7.1.1-6.fc27.x86_64 libgcrypt-1.7.8-1.fc27.x86_64 libglvnd-0.2.999-20.20170620gitd850cdd.fc27.x86_64 libglvnd-glx-0.2.999-20.20170620gitd850cdd.fc27.x86_64 libgpg-error-1.27-1.fc27.x86_64 libicu-57.1-4.fc26.x86_64 libpng-1.6.29-1.fc27.x86_64 libselinux-2.6-8.fc27.x86_64 libstdc++-7.1.1-6.fc27.x86_64 libxcb-1.12-3.fc26.x86_64 lz4-libs-1.7.5-4.fc27.x86_64 openssl-libs-1.1.0f-7.fc27.x86_64 pcre-8.41-1.fc27.x86_64 pcre2-utf16-10.30-0.3.RC1.fc27.x86_64 qt5-qtbase-5.9.1-3.fc27.x86_64 qt5-qtbase-gui-5.9.1-3.fc27.x86_64 qt5-qtscript-5.9.1-1.fc27.x86_64 systemd-libs-234-3.fc27.x86_64 xz-libs-5.2.3-2.fc26.x86_64 zlib-1.2.11-2.fc26.x86_64
>>>>> (gdb)
>>>>> Thread 2 (Thread 0x7f1b3964d700 (LWP 18642)):
>>>>> #0 0x00007f1b41076d77 in waitpid () from /usr/lib64/libc.so.6
>>>>> No symbol table info available.
>>>>> #1 0x00007f1b40fe08e7 in do_system () from /usr/lib64/libc.so.6
>>>>> No symbol table info available.
>>>>> #2 0x00007f1b4224a7e1 in stackTrace() [clone .part.2] () from /usr/lib64/libQt5Test.so.5
>>>>> No symbol table info available.
>>>>> #3 0x00007f1b4224a86d in stackTrace() () from /usr/lib64/libQt5Test.so.5
>>>>> No symbol table info available.
>>>>> #4 0x00007f1b422533bb in QTest::WatchDog::run() () from /usr/lib64/libQt5Test.so.5
>>>>> No symbol table info available.
>>>>> #5 0x00007f1b419c746e in QThreadPrivate::start(void*) () from /usr/lib64/libQt5Core.so.5
>>>>> No symbol table info available.
>>>>> #6 0x00007f1b3fb92609 in start_thread () from /usr/lib64/libpthread.so.0
>>>>> No symbol table info available.
>>>>> #7 0x00007f1b410b337f in clone () from /usr/lib64/libc.so.6
>>>>> No symbol table info available.
>>>>>
>>>>> Thread 1 (Thread 0x7f1b42b6e8c0 (LWP 18640)):
>>>>> #0 0x00007f1b410a6e66 in ppoll () from /usr/lib64/libc.so.6
>>>>> No symbol table info available.
>>>>> #1 0x00007f1b41bf1d00 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () from /usr/lib64/libQt5Core.so.5
>>>>> No symbol table info available.
>>>>> #2 0x00007f1b41b2c0f8 in QProcessPrivate::waitForFinished(int) () from /usr/lib64/libQt5Core.so.5
>>>>> No symbol table info available.
>>>>> #3 0x00007f1b41b2240d in QProcess::waitForFinished(int) () from /usr/lib64/libQt5Core.so.5
>>>>> No symbol table info available.
>>>>> #4 0x000055902b20b305 in TestBlackboxBase::runQbs (this=0x7ffe51c12b20, params=...) at tst_blackboxbase.cpp:87
>>>>> args = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {
>>>>> _q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0, end = 0,
>>>>> array = {0x0}}, d = 0x55902bd21f70}, d = 0x55902bd21f70}}, <No data fields>}
>>>>> process = <incomplete type>
>>>>> waitTime = 600000
>>>>> #5 0x000055902b1f372c in TestBlackbox::artifactScanning (this=0x7ffe51c12b20) at tst_blackbox.cpp:340
>>>>> projectDir = {static null = {<No data fields>}, d = 0x55902bd1ec20}
>>>>> params = {command = {static null = {<No data fields>}, d = 0x55902bd37020},
>>>>> arguments = {<QList<QString>> = {<QListSpecialMethods<QString>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {
>>>>> _q_value = {<std::__atomic_base<int>> = {static _S_alignment = 4, _M_i = -1}, <No data fields>}}}, alloc = 0, begin = 0,
>>>>> end = 0, array = {0x0}}, d = 0x7f1b41c49300 <QListData::shared_null>},
>>>>> d = 0x7f1b41c49300 <QListData::shared_null>}}, <No data fields>}, buildDirectory = {static null = {<No data fields>},
>>>>> d = 0x7f1b41c46d00 <QArrayData::shared_null>}, environment = {d = {d = 0x55902bd24830}}, expectFailure = false, useProfile = true}
>>>>> #6 0x00007f1b41bb0446 in QMetaMethod::invoke(QObject*, Qt::ConnectionType, QGenericReturnArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument, QGenericArgument) const ()
>>>>> from /usr/lib64/libQt5Core.so.5
>>>>> No symbol table info available.
>>>>> #7 0x00007f1b422513ba in QTest::TestMethods::invokeTestOnData(int) const () from /usr/lib64/libQt5Test.so.5
>>>>> No symbol table info available.
>>>>> #8 0x00007f1b422520c0 in QTest::TestMethods::invokeTest(int, char const*, QTest::WatchDog*) const () from /usr/lib64/libQt5Test.so.5
>>>>> No symbol table info available.
>>>>> #9 0x00007f1b422525f1 in QTest::TestMethods::invokeTests(QObject*) const () from /usr/lib64/libQt5Test.so.5
>>>>> No symbol table info available.
>>>>> #10 0x00007f1b42252bab in QTest::qExec(QObject*, int, char**) () from /usr/lib64/libQt5Test.so.5
>>>>> No symbol table info available.
>>>>> #11 0x000055902b1bf807 in main (argc=<optimized out>, argv=0x7ffe51c12c68) at tst_blackbox.cpp:4874
>>>>> app = <incomplete type>
>>>>> tc = {<TestBlackboxBase> = {<QObject> = {<No data fields>}, static staticMetaObject = {d = {
>>>>> superdata = 0x7f1b41ff2ba0 <QObject::staticMetaObject>, stringdata = 0x55902b21fd80 <qt_meta_stringdata_TestBlackboxBase>,
>>>>> data = 0x55902b21fd20 <qt_meta_data_TestBlackboxBase>,
>>>>> static_metacall = 0x55902b20f5b0 <TestBlackboxBase::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>,
>>>>> relatedMetaObjects = 0x0, extradata = 0x0}}, testDataDir = {static null = {<No data fields>}, d = 0x55902bd16db0}, testSourceDir = {
>>>>> static null = {<No data fields>}, d = 0x55902bd16d00}, qbsExecutableFilePath = {static null = {<No data fields>}, d = 0x55902bd16200},
>>>>> defaultInstallRoot = {static null = {<No data fields>}, d = 0x55902bd14970}, m_qbsStderr = {d = 0x55902bd25430}, m_qbsStdout = {
>>>>> d = 0x55902bd254c0}}, static staticMetaObject = {d = {superdata = 0x55902b42b480 <TestBlackboxBase::staticMetaObject>,
>>>>> stringdata = 0x55902b21e000 <qt_meta_stringdata_TestBlackbox>, data = 0x55902b21cf00 <qt_meta_data_TestBlackbox>,
>>>>> static_metacall = 0x55902b20f170 <TestBlackbox::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0,
>>>>> extradata = 0x0}}}
>>>>> Detaching from program: /home/sandro/rpmbuild/BUILD/qbs-src-1.8.1/bin/tst_blackbox, process 18640
>>>>> ========= End of stack trace ==============
>>>>> QFATAL : TestBlackbox::artifactScanning() Test function timed out
>>>>> FAIL! : TestBlackbox::artifactScanning() Received a fatal error.
>>>>> Loc: [Unknown file(0)]
>>>>> Totals: 2 passed, 2 failed, 0 skipped, 0 blacklisted, 300834ms
>>>>> ********* Finished testing of TestBlackbox *********
>>>>>
>>
>
> <qbs_test_lexyacc.patch><qbs.spec>
--
Jake Petroules - jake.petroules at qt.io
The Qt Company - Silicon Valley
Qbs build tool evangelist - qbs.io
More information about the Qbs
mailing list