Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] PyQt5-5.9.2 fails to emerge
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
mong00se
n00b
n00b


Joined: 05 Jun 2018
Posts: 6

PostPosted: Tue Jun 05, 2018 4:15 am    Post subject: [SOLVED] PyQt5-5.9.2 fails to emerge Reply with quote

Dear all, I suspect I have this bug:

https://bugs.gentoo.org/656232

When I try to emerge PyQt5 the last lines read:

Code:
make[1]: Entering directory '/var/tmp/portage/dev-python/PyQt5-5.9.2/work/PyQt5_gpl-5.9.2-python2_7/QtWebKitWidgets'
x86_64-pc-linux-gnu-g++ -c -march=broadwell -O2 -pipe -fno-exceptions -Wall -W -D_REENTRANT -fPIC -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_WEBKITWIDGETS_LIB -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_WEBKIT_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I. -isystem /usr/include/python2.7 -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWebKitWidgets -isystem /usr/include/qt5/QtPrintSupport -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtWebKit -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtCore -I. -isystem /usr/include/libdrm -I/usr/lib64/qt5/mkspecs/linux-g++ -o sipQtWebKitWidgetsQGraphicsWebView.o sipQtWebKitWidgetsQGraphicsWebView.cpp
x86_64-pc-linux-gnu-g++ -c -march=broadwell -O2 -pipe -fno-exceptions -Wall -W -D_REENTRANT -fPIC -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_WEBKITWIDGETS_LIB -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_WEBKIT_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I. -isystem /usr/include/python2.7 -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtWebKitWidgets -isystem /usr/include/qt5/QtPrintSupport -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtWebKit -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtCore -I. -isystem /usr/include/libdrm -I/usr/lib64/qt5/mkspecs/linux-g++ -o sipQtWebKitWidgetsQList0101QWebFrame.o sipQtWebKitWidgetsQList0101QWebFrame.cpp
In file included from sipQtWebKitWidgetsQGraphicsWebView.cpp:24:0:
/var/tmp/portage/dev-python/PyQt5-5.9.2/work/PyQt5_gpl-5.9.2/sip/QtWebKitWidgets/qgraphicswebview.sip:124:28: fatal error: QGraphicsWebView: No such file or directory
 #include <QGraphicsWebView>
                            ^
compilation terminated.
In file included from sipQtWebKitWidgetsQList0101QWebFrame.cpp:24:0:
/var/tmp/portage/dev-python/PyQt5-5.9.2/work/PyQt5_gpl-5.9.2/sip/QtWebKitWidgets/qgraphicswebview.sip:124:28: fatal error: QGraphicsWebView: No such file or directory
 #include <QGraphicsWebView>
                            ^
compilation terminated.
make[1]: *** [Makefile:525: sipQtWebKitWidgetsQGraphicsWebView.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:528: sipQtWebKitWidgetsQList0101QWebFrame.o] Error 1
make[1]: Leaving directory '/var/tmp/portage/dev-python/PyQt5-5.9.2/work/PyQt5_gpl-5.9.2-python2_7/QtWebKitWidgets'
make: *** [Makefile:842: sub-QtWebKitWidgets-make_first-ordered] Error 2
 * ERROR: dev-python/PyQt5-5.9.2::gentoo failed (compile phase):
 *   emake failed


Full emerge @world output with emerge --info appended:

https://paste.pound-python.org/show/PYOcgqmHRByIPW54ejcC/

I'm in the process of upgrading Ruby to Ruby 23 so that's what those messages on the Ruby packages are about, if you care to take a look, but I've otherwise updated all other packages on my machine. I attempted to emerge PyQt5-5.10.1, but I get the same compilation error.

Is it best to mask PyQt5-5.9.2 and then do emerge @world? I currently can't use qutebrowser because of this and that's the most important thing to me right now.

Thanks in advance.


Last edited by mong00se on Wed Jun 06, 2018 11:45 pm; edited 1 time in total
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30885
Location: here

PostPosted: Tue Jun 05, 2018 5:06 am    Post subject: Reply with quote

But you have resolved conflicts before update PyQt5? Because in my system pyqt6-5.9.2 compile fine.
One problem is
Code:
dev-scheme/guile:12

  (dev-scheme/guile-2.0.14-r3:12/22::gentoo, ebuild scheduled for merge) conflicts with
    <dev-scheme/guile-2.0:12 required by (media-sound/lilypond-2.19.80-r1:0/0::gentoo, installed)
    ^                 ^^^   

you should mask guile-2.0.14-r3 because media-sound/lilypond need a version less thant 2.x.x.
Another problem is
Code:
!!! The following updates are masked by LICENSE changes:
- app-arch/rar-5.5.0_p20170811::gentoo (masked by: RAR license(s))
A copy of the 'RAR' license is located at '/usr/portage/licenses/RAR'.

you should add rar license for rar package
Code:
# echo "app-arch/rar RAR" >> /etc/portage/package.license

After that try to run update command
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
mong00se
n00b
n00b


Joined: 05 Jun 2018
Posts: 6

PostPosted: Tue Jun 05, 2018 10:34 am    Post subject: Resolved conflicts, error remains. Reply with quote

Thanks for the quick response. I have followed your suggestions and besides the Ruby packages have resolved all conflicts. Unfortunately, I'm still getting the same compilation error. Here is the full output from emerge @world, again with emerge --info appended:

https://paste.pound-python.org/show/BfeWLHH4k8rUwJDdF7ZA/

Any ideas? I tried masking Pyqt5-5.9.2 but I think that causes more problems than it solves. I also tried rebooting and deleting the build directory.
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30885
Location: here

PostPosted: Tue Jun 05, 2018 10:58 am    Post subject: Reply with quote

You can post command output
Code:
# emerge -UD --with-bdeps=y @world

_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
mong00se
n00b
n00b


Joined: 05 Jun 2018
Posts: 6

PostPosted: Tue Jun 05, 2018 12:02 pm    Post subject: Reply with quote

Here is output:

https://paste.pound-python.org/show/9pyVuijP0D13TUxcjx4a/

Shows the same error.

Thanks again for the help.
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30885
Location: here

PostPosted: Tue Jun 05, 2018 12:22 pm    Post subject: Reply with quote

I think, but not sure, that the problem is linked with a bad ruby upgrade.
I see in your emerge --info that you setted RUBY_TARGETS="ruby22 ruby23" but ruby22 is masked and will be removed shortly.
Try to remove it on your make.conf and keep only RUBY_TARGETS="ruby23", or remove this line because it's provided by profile.
When you did that try to update with emerge -UD --with-bdeps=y @world
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
mong00se
n00b
n00b


Joined: 05 Jun 2018
Posts: 6

PostPosted: Tue Jun 05, 2018 1:29 pm    Post subject: Reply with quote

I modified my make.conf file to only include the line RUBY_TARGETS="ruby23":

Code:
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
CFLAGS="-march=broadwell -O2 -pipe"
CXXFLAGS="${CFLAGS}"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="x86_64-pc-linux-gnu"
# These are the USE and USE_EXPAND flags that were used for
# buidling in addition to what is provided by the profile.
USE="X icu alsa glamor vaapi"
RUBY_TARGETS="ruby23"
CPU_FLAGS_X86="mmx mmxext sse sse2"
PORTDIR="/usr/portage"
PORT_LOGDIR="/var/log/portage"
DISTDIR="${PORTDIR}/distfiles"
PKGDIR="${PORTDIR}/packages"
MAKEOPTS="-j3 -l2"
GENTOO_MIRRORS="http://cosmos.illinois.edu/pub/gentoo/"
GRUB_PLATFORMS="efi-64"
INPUT_DEVICES="evdev"
VIDEO_CARDS="intel i965"


Now here is the output of emerge -UD --with-bdeps=y @world:

https://paste.pound-python.org/show/V5ayjjPr67qolrGRxz3Z/

I did some digging around and found out that qtwebkit was deprecated in QT 5.6:

http://wiki.qt.io/New_Features_in_Qt_5.6#Removed_Modules

Also that QGraphicsWebview is not available in Qtwebengine:

http://doc.qt.io/qt-5/qtwebenginewidgets-qtwebkitportingguide.html#unavailable-qt-webkit-api

I don't know why it compiles on your machine though, I don't know if this is information is at all useful. Tried looking at the ebuild, but couldn't make much sense if it. Unfortunately, I'm not a Gentoo developer.
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30885
Location: here

PostPosted: Tue Jun 05, 2018 2:02 pm    Post subject: Reply with quote

mong00se wrote:
Also that QGraphicsWebview is not available in Qtwebengine

Indeed is provided by dev-qt/qtwebkit.
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
mong00se
n00b
n00b


Joined: 05 Jun 2018
Posts: 6

PostPosted: Wed Jun 06, 2018 3:29 am    Post subject: Reply with quote

I have great news!

I was able to solve the problem, many thanks to fedeliallalinea for the help. I will outline the steps I took to solve it for people who may have the same problem. Basing my suspicions on problems with the deprecated webkit module, I first looked at which packages on my system depended on PyQt5:

Code:

equery d PyQt5
dev-python/matplotlib-2.2.2-r1 (qt5 ? dev-python/PyQt5[gui,widgets,python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,python_targets_python3_6(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-)])
www-client/qutebrowser-1.3.1 (>=dev-python/PyQt5-5.7.1[python_targets_python3_5(-)?,python_targets_python3_6(-)?,-python_single_target_python3_5(-),-python_single_target_python3_6(-),declarative,gui,network,opengl,printsupport,sql,webengine,widgets])


Looking into use keywords by qutebrowser, under package.use folder:

Code:

# required by www-client/qutebrowser-0.9.1::gentoo
# required by qutebrowser (argument)
>=dev-python/PyQt5-5.7.1 printsupport network webkit declarative widgets gui opengl sql webengine webchannel python_targets_python3_5


You can see that this old version of qutebrowser, 0.9.1, used webkit and the new version, 1.3.1, does not.

So, I changed this to:

Code:

# required by www-client/qutebrowser-1.3.1::gentoo
# required by @selected
# required by @world (argument)
>=dev-python/PyQt5-5.9.2 gui opengl sql printsupport widgets network declarative webengine


Doing emerge -DU @world complained about needing to add the webchannel keyword, I guess that is what the ebuild for PyQt5-5.9.2 looks for (disclaimer I don't write ebuilds):

Code:

REQUIRED_USE="
   ${PYTHON_REQUIRED_USE}
   bluetooth? ( gui )
   declarative? ( gui network )
   designer? ( widgets )
   help? ( gui widgets )
   location? ( positioning )
   multimedia? ( gui network )
   opengl? ( gui widgets )
   positioning? ( gui )
   printsupport? ( gui widgets )
   sensors? ( gui )
   serialport? ( gui )
   sql? ( widgets )
   svg? ( gui widgets )
   testlib? ( widgets )
   webchannel? ( network )
   webengine? ( network widgets? ( printsupport webchannel ) )
   webkit? ( gui network printsupport widgets )
   websockets? ( network )
   widgets? ( gui )
   xmlpatterns? ( network )
"


See the full ebuild at:

https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-python/PyQt5/PyQt5-5.9.2.ebuild?id=266b4055304cedb8842aaab352f2726fe5cb5f3f

And so I added the webchannel keyword:

Code:

# required by www-client/qutebrowser-1.3.1::gentoo
# required by @selected
# required by @world (argument)
>=dev-python/PyQt5-5.9.2 gui opengl sql printsupport widgets network declarative webengine webchannel


PyQt5-5.9.2 compiled just fine. Tried to run qutebrowser, but it gave:

Code:
21:37:04 CRITICAL qt         Unknown module:none:0 Cannot mix incompatible Qt library (version 0x50701) with this library (version 0x50905)
Aborted


An emerge --depclean solved this problem. For the output of this command, where several old Qt 5.7.1 packages are seen to be unmerged (which I suspect was why qutebrowser wouldn't still run), see this link:

https://paste.pound-python.org/show/dXPZoN7wgtP36EWbajaf/

My questions are, is this something that portage should have warned me about? Or is this totally my fault? Do I need to file a bug? If so, I will happily do so.

Thanks again.
Back to top
View user's profile Send private message
mong00se
n00b
n00b


Joined: 05 Jun 2018
Posts: 6

PostPosted: Wed Jun 06, 2018 11:45 pm    Post subject: Reply with quote

I left a comment on the bugzilla thread. Consider this solved, everyone else, please follow that thread if this solution does not work for you

Thanks again.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum