[staging] calibre build failure

  • Done
  • quality assurance status badge
Details
3 participants
  • Marius Bakke
  • Marius Bakke
  • Michael Rohleder
Owner
unassigned
Submitted by
Marius Bakke
Severity
normal
M
M
Marius Bakke wrote on 29 May 2020 16:10
(address . bug-guix@gnu.org)
87imge4ysy.fsf@gnu.org
On the 'staging' branch (commit
8a7a5dc7805f4628e60f90af6b2416f951d0c034), "calibre" fails to build:

g++ -c -pipe -O2 -Wall -Wextra -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_THEME_SUPPORT_LIB -DQT_FONTDATABASE_SUPPORT_LIB -DQT_SERVICE_SUPPORT_LIB -DQT_EVENTDISPATCHER_SUPPORT_LIB -DQT_GUI_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -isystem /gnu/store/3x2kak8abb6z2klch72kfff2qxzv00pj-libpng-1.6.37/include/libpng16 -isystem /gnu/store/haaam6v8l4s75mj9xmpb9gc78xk001y9-freetype-2.10.1/include/freetype2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport/5.14.2/QtThemeSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport/5.14.2/QtFontDatabaseSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport/5.14.2/QtServiceSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport/5.14.2/QtEventDispatcherSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui/5.14.2/QtGui -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore/5.14.2/QtCore -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtDBus -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore -I. -isystem /gnu/store/ka6amik38awpprjmbj01pnl9zsxgjjgz-libdrm-2.4.101/include/libdrm -I/gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/lib/qt5/mkspecs/linux-g++ -o main.o /tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/main.cpp
/tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/headless_integration.cpp: In constructor ‘HeadlessIntegration::HeadlessIntegration(const QStringList&)’:
/tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/headless_integration.cpp:61:5: error: ‘screenAdded’ was not declared in this scope
screenAdded(mPrimaryScreen);
^~~~~~~~~~~
make: *** [Makefile:336: headless_integration.o] Error 1

Presumably this can be fixed by updating to the latest version of
Calibre (4.17.0!). Any takers? :-)
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl7RF80ACgkQoqBt8qM6
VPpNpAf+Kq4Te3qizFYHF7jMusSuk96FOwi5vuEVWYV/5VDa5hD9oN7I7TUjV8wT
pVRTBj5wcXuGVGxGlms0Y6ZU2Sv8vSEmn2Bg5jEI/DDAn6D35KmjvDqG9er5T/rP
8SDAZxmdwACcPUO4/hs0zB2ce4JrCsjXvRvDygDu+tbrBpHmX4t5zvZsRc7i0OZU
6HQRKCVWvo3yymn6jfaEHzkvC3G1gawYVPXGM3nlzhFmHH1tkSfQKxm+6/CCXJ2M
84jsyzmzlgituYpTK/OHdtT8HmhN5KZaQBdwrM/84JYjPjvWvA+hzAas1Pf8gxes
1gdy8wjtdWM089EJ02H1kFNvYUnq5Q==
=jS8d
-----END PGP SIGNATURE-----

M
M
Marius Bakke wrote on 2 Jun 2020 22:32
(address . 41598@debbugs.gnu.org)
87r1uxus1y.fsf@gnu.org
Marius Bakke <mbakke@fastmail.com> writes:

Toggle quote (13 lines)
> On the 'staging' branch (commit
> 8a7a5dc7805f4628e60f90af6b2416f951d0c034), "calibre" fails to build:
>
> g++ -c -pipe -O2 -Wall -Wextra -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_THEME_SUPPORT_LIB -DQT_FONTDATABASE_SUPPORT_LIB -DQT_SERVICE_SUPPORT_LIB -DQT_EVENTDISPATCHER_SUPPORT_LIB -DQT_GUI_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -isystem /gnu/store/3x2kak8abb6z2klch72kfff2qxzv00pj-libpng-1.6.37/include/libpng16 -isystem /gnu/store/haaam6v8l4s75mj9xmpb9gc78xk001y9-freetype-2.10.1/include/freetype2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport/5.14.2/QtThemeSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport/5.14.2/QtFontDatabaseSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport/5.14.2/QtServiceSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport/5.14.2/QtEventDispatcherSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui/5.14.2/QtGui -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore/5.14.2/QtCore -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtDBus -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore -I. -isystem /gnu/store/ka6amik38awpprjmbj01pnl9zsxgjjgz-libdrm-2.4.101/include/libdrm -I/gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/lib/qt5/mkspecs/linux-g++ -o main.o /tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/main.cpp
> /tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/headless_integration.cpp: In constructor ‘HeadlessIntegration::HeadlessIntegration(const QStringList&)’:
> /tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/headless_integration.cpp:61:5: error: ‘screenAdded’ was not declared in this scope
> screenAdded(mPrimaryScreen);
> ^~~~~~~~~~~
> make: *** [Makefile:336: headless_integration.o] Error 1
>
> Presumably this can be fixed by updating to the latest version of
> Calibre (4.17.0!). Any takers? :-)

I started working on this. It now needs 'python2-pyqtwebengine', but
has some trouble because PyQt apparently really wants all the components
(sip, pyqt, pyqtwebengine) to live in the same directory, and does not
respect the standard search paths.

The Calibre build script works if I run it in a 'guix environment -C',
because that would set up a single union profile with all the packages.

I tried this hack as a workaround, but now it hits a SIGTRAP somewhere:

Toggle snippet (29 lines)
(define (make-pyqt+pyqtwebengine-union pyqt pyqtwebengine)
(package
(name (string-append (package-name pyqt) "+pyqtwebengine"))
(version (package-version pyqt))
(source #f)
(inputs
`(("pyqt" ,pyqt)
("pyqtwebengine" ,pyqtwebengine)))
(build-system trivial-build-system)
(arguments
'(#:modules ((guix build union))
#:builder (begin
(use-modules (ice-9 match)
(guix build union))
(let ((out (assoc-ref %outputs "out")))
(match %build-inputs
(((names . directories) ...)
(union-build out directories)))
#t))))
(home-page (package-home-page pyqt))
(license (package-license pyqt))
(synopsis "Union of PyQt and PyQtWebEngine")
(description
"This package provides PyQt and PyQtWebEngine in the same package.")))

(define-public python2-pyqt+pyqtwebengine
(make-pyqt+pyqtwebengine-union python2-pyqt python2-pyqtwebengine))

Also, the new Calibre has experimental Python 3 support, but I'm keeping
Python 2 for now to have less "moving parts".

To be continued...
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl7Wt3kACgkQoqBt8qM6
VPo4MwgAv7ruUrBx3J0cbyTbiXrnJ1NsMELeKr+gm3BL6fmZUfOS1B1oKXlUCaBE
8dlhAG48queL8VX+5AUDPmpd41ITjNDo+cDwTc58dSkLYF6sfdCQ4OSRIWnGxhA3
ar+DgAs541CpTdZ9IwE/EkMgGB0yi9f2UzeVU7YD0eLZcnXLs3KKoPn07ld550Vr
oLfABadEBCA2O3J2Sl6qKqzYXjrbd+BypT1SWxHaCUFmJHvWwL5m6ZWPALI4YoQy
B7H8Od3ryAmvUDUT/S2jw7WadhldhB4S/vK3Q041pgOpbqz3zbySVzzndxImGEcs
Gn+ICXS+SPMWHpc4HIrMe/enTEgZew==
=BZpJ
-----END PGP SIGNATURE-----

M
M
Michael Rohleder wrote on 3 Jun 2020 03:16
Re: bug#41598: [staging] calibre build failure
(name . Marius Bakke)(address . marius@gnu.org)(address . 41598@debbugs.gnu.org)
87zh9lt0cw.fsf@rohleder.de
Marius Bakke <marius@gnu.org> writes:
Toggle quote (10 lines)
> I started working on this. It now needs 'python2-pyqtwebengine', but
> has some trouble because PyQt apparently really wants all the components
> (sip, pyqt, pyqtwebengine) to live in the same directory, and does not
> respect the standard search paths.
>
> The Calibre build script works if I run it in a 'guix environment -C',
> because that would set up a single union profile with all the packages.
>
> I tried this hack as a workaround, but now it hits a SIGTRAP somewhere:

what I found out is that the versions between 3.45 and 3.48 compiles
with our qt version, only a (stupid) html test fails.

Maybe this could be a shorter route to get it working.

--
Programmierer sind Maschinen die Nikotin und Koffein in Programmcode umsetzen.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCAAdFiEEdV4t5dDVhcUueCgwfHr/vv7yyyUFAl7W+e8ACgkQfHr/vv7y
yyUbGAf/ekbL5pQoH9TH128Z5gcvAgc1kvQjRUj3CwWHBuf98M2kY+TEMe3u1wPN
zvag34+uVEtHMaMRM+SvcuIQeoJn0XbPqWE5pb6GtDma8ggdcL2Wm/+F8rXDbDL+
V841JDLSIaz7KZsnkKcD2zhYJWxTAsUT2dTA0BM1g3zilxII0JiAOVNWX7yGqJOc
3oSAyI28ZYRduMPeoajcXnAPBLND3QgkdRbAo5BJCRMxlozN/YIuwlJ5wq4DPrrk
9JT62ZHKJgYXTMGNt3gtDNeezczsZVZj0hJQqMIrIH+29xFjAxG7TpfKCM18H2eP
myL3imYISGGjsp45v1SOfsX0d5RoTQ==
=CKEc
-----END PGP SIGNATURE-----

M
M
Marius Bakke wrote on 8 Jun 2020 19:34
(address . 41598-done@debbugs.gnu.org)
87r1up5unk.fsf@gnu.org
Marius Bakke <marius@gnu.org> writes:

Toggle quote (23 lines)
> Marius Bakke <mbakke@fastmail.com> writes:
>
>> On the 'staging' branch (commit
>> 8a7a5dc7805f4628e60f90af6b2416f951d0c034), "calibre" fails to build:
>>
>> g++ -c -pipe -O2 -Wall -Wextra -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_THEME_SUPPORT_LIB -DQT_FONTDATABASE_SUPPORT_LIB -DQT_SERVICE_SUPPORT_LIB -DQT_EVENTDISPATCHER_SUPPORT_LIB -DQT_GUI_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -isystem /gnu/store/3x2kak8abb6z2klch72kfff2qxzv00pj-libpng-1.6.37/include/libpng16 -isystem /gnu/store/haaam6v8l4s75mj9xmpb9gc78xk001y9-freetype-2.10.1/include/freetype2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtThemeSupport/5.14.2/QtThemeSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtFontDatabaseSupport/5.14.2/QtFontDatabaseSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtServiceSupport/5.14.2/QtServiceSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtEventDispatcherSupport/5.14.2/QtEventDispatcherSupport -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui/5.14.2/QtGui -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtGui -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore/5.14.2 -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore/5.14.2/QtCore -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtDBus -isystem /gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/include/qt5/QtCore -I. -isystem /gnu/store/ka6amik38awpprjmbj01pnl9zsxgjjgz-libdrm-2.4.101/include/libdrm -I/gnu/store/59dq1n4wj3maa3kcar6hspj2zd82as7q-qtbase-5.14.2/lib/qt5/mkspecs/linux-g++ -o main.o /tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/main.cpp
>> /tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/headless_integration.cpp: In constructor ‘HeadlessIntegration::HeadlessIntegration(const QStringList&)’:
>> /tmp/guix-build-calibre-3.42.0.drv-0/calibre-3.42.0/src/calibre/headless/headless_integration.cpp:61:5: error: ‘screenAdded’ was not declared in this scope
>> screenAdded(mPrimaryScreen);
>> ^~~~~~~~~~~
>> make: *** [Makefile:336: headless_integration.o] Error 1
>>
>> Presumably this can be fixed by updating to the latest version of
>> Calibre (4.17.0!). Any takers? :-)
>
> I started working on this. It now needs 'python2-pyqtwebengine', but
> has some trouble because PyQt apparently really wants all the components
> (sip, pyqt, pyqtwebengine) to live in the same directory, and does not
> respect the standard search paths.
>
> The Calibre build script works if I run it in a 'guix environment -C',
> because that would set up a single union profile with all the packages.

As it turns out, the reason it worked in a container was not because of
the union profile. That was just one of many red herrings in the strace
output...

Ultimately all it needed were TrueType fonts, which were available in my
container because of the fontconfig graft.

Update pushed in d79ec4fd343bc2a72652aa3a4b4ae14bd8df88ac. \o/

Testers welcome!
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl7edo8ACgkQoqBt8qM6
VPpiQAgAjZwfFCNbJphsG82t7sdVsHlgLfwyn5OT9Gn+I785e+m/3+6RBzcrw2on
QP977+lOvsvqJ3rNvUlEIobbNfOkiaEzAiftt2VzQHrPgW/F5te4q/NBE1Lp3MEK
6XNHzfgT+1u35g3pdqxx/XQgNVlQvV01kvm3llKH79surQeBXWC+TH8Avi/oawIs
uEz3TFAkj/YGtP5q/veTgUwqHMvkl6W8wVEFyTXh5orowN+s+k8+WEdImpJDJfqm
tCCuO8AvCKCBQBMEpDui7JS67C8JuMFomlxJkFc3wfmpu/5t7XYD/9XRuy5BBRE8
6gHstfKDrPspDnRXsgG0wO+y+ZUavQ==
=4heq
-----END PGP SIGNATURE-----

Closed
?