Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 581418 - dev-python/PyQt5-5.6 Missing include (dbus/dbus-arch-deps.h)
Summary: dev-python/PyQt5-5.6 Missing include (dbus/dbus-arch-deps.h)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Qt Bug Alias
URL:
Whiteboard:
Keywords: UPSTREAM
Depends on:
Blocks:
 
Reported: 2016-04-28 06:53 UTC by Aric Belsito
Modified: 2016-04-29 00:50 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Use pkg-config to get dbus-python include path (PyQt5-5.6-dbus_path.patch,1.81 KB, patch)
2016-04-28 12:20 UTC, Jouni Kosonen
Details | Diff
add src_prepare() for patch (PyQt5-5.6-r1.ebuild,5.17 KB, text/plain)
2016-04-28 21:22 UTC, Seong-ho Cho
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Aric Belsito 2016-04-28 06:53:23 UTC
Build Error:
In file included from /usr/include/dbus-1.0/dbus/dbus-python.h:33:0,
                 from ../../PyQt5_gpl-5.6/dbus/dbus.cpp:27:
/usr/include/dbus-1.0/dbus/dbus.h:29:33: fatal error: dbus/dbus-arch-deps.h: No such file or directory
compilation terminated.
Makefile:292: recipe for target 'dbus.o' failed.

Looking around for similar bugs, it appears that the include path for dbus in PyQt5-5.6.0 is probably not being included by calling pkg-config --cflags dbus-1.0,

This should be reported upstream.
Comment 1 Rinaldus 2016-04-28 07:50:37 UTC
I confirm, I have the same bug.
Comment 2 Jouni Kosonen 2016-04-28 09:21:28 UTC
Some quick observations.

The configure.py does find the correct path:

#2108 pkg-config --cflags-only-I --libs dbus-1
-I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -ldbus-1

but it then removes any directory that doesn't contain dbus-python.h (#2143-2158)
This is intentional (#2134-2137):
  # Try and find dbus-python.h.  We don't use pkg-config because it is broken
  # for dbus-python (at least for versions up to and including v0.81.0).
  # Instead we look where DBus itself is installed - which in most cases will
  # be where dbus-python is also installed.

I wonder if upstream would accept using the output of 
 pkg-config --cflags-only-I dbus-python 
here as is when the module version >= 1.2.0 ?
Comment 3 Jouni Kosonen 2016-04-28 12:20:29 UTC
Created attachment 432416 [details, diff]
Use pkg-config to get dbus-python include path

The problem with dbus-python pkgconf file was fixed by PyQt upstream almost 
nine years ago in dbus-python version 0.81.1: 

commit a370850a68659a771690c2dac7148e371b6c9b51
Author: Simon McVittie <simon.mcvittie@collabora.co.uk>
Date:   Mon Jun 4 12:10:53 2007 +0100

    dbus-python.pc.in: Use -I${includedir} to allow libdbus and dbus-python to be in different ${prefix}es
    Patch from Phil Thompson at Riverbank Computing Ltd.

but the PyQt configuration wasn't changed to match. 

For what it's worth, the attached patch for PyQt5 worked here for multilib amd64 w/ PYTHON_TARGETS="python2_7 python3_4"
Comment 4 Andreas Proteus 2016-04-28 14:13:09 UTC
Patch works here. Thank you.
Comment 5 Fabio Coatti 2016-04-28 15:45:39 UTC
Confirmed working also here, thanks.
Comment 6 Aric Belsito 2016-04-28 19:58:31 UTC
The patch works here too. :)
Comment 7 Davide Pesavento (RETIRED) gentoo-dev 2016-04-28 21:07:04 UTC
(In reply to Aric Belsito from comment #0)
> This should be reported upstream.

Upstream is already aware of the issue.

https://www.riverbankcomputing.com/pipermail/pyqt/2016-April/037346.html
Comment 8 Seong-ho Cho 2016-04-28 21:22:07 UTC
Created attachment 432490 [details]
add src_prepare() for patch

patch works also here, with my modified ebuild.
(-r1 suffix is just for distinction from original ebuild)
Comment 9 Davide Pesavento (RETIRED) gentoo-dev 2016-04-29 00:50:42 UTC
Should be fixed in 5.6.1_pre1604271126