Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > E-Book Software > Calibre > Development

Notices

Reply
 
Thread Tools Search this Thread
Old 04-29-2021, 02:48 PM   #1
Geremia
Addict
Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!Geremia rocks like Gibraltar!
 
Posts: 235
Karma: 100000
Join Date: Oct 2012
Device: Calibre
Unable to find file "QtWidgets/QtWidgetsmod.sip"

Trying to build Calibre 5.16.1, but I get:

Code:
*
* Running build
*

Building 24 extensions
SIPing 3 files...
/usr/bin/python3 -c import os; os.chdir('/tmp/SBo/calibre-5.16.1/build/pyqt/pictureflow'); from sipbuild.tools.build import main; main(); --verbose --no-make --qmake /usr/bin/qmake-qt5
Querying qmake about your Qt installation...
/usr/bin/qmake-qt5 -query
These bindings will be built: pictureflow.
Generating the pictureflow bindings...
-c: Unable to find file "QtWidgets/QtWidgetsmod.sip"
I have
QMake version 3.1
Using Qt version 5.15.2 in /usr/lib64
Geremia is offline   Reply With Quote
Old 04-29-2021, 09:11 PM   #2
kovidgoyal
creator of calibre
kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.
 
kovidgoyal's Avatar
 
Posts: 43,857
Karma: 22666666
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
You need pyqt5 if you are using one of those silly distros that split packages into dev and non dev versions then the -dev version of it
kovidgoyal is offline   Reply With Quote
Advert
Old 06-23-2021, 11:39 AM   #3
akadaedalus
Enthusiast
akadaedalus began at the beginning.
 
Posts: 28
Karma: 10
Join Date: Jun 2008
Device: Sony PRS-500
I'm using a different silly distro (Gentoo) and it still fails with this error despite the existence of /usr/share/sip/PyQt5/QtWidgets/QtWidgetsmod.sip.
akadaedalus is offline   Reply With Quote
Old 07-28-2021, 02:05 AM   #4
snappahead
Junior Member
snappahead began at the beginning.
 
Posts: 3
Karma: 10
Join Date: Jul 2021
Device: Kindle
Having this exact issue with Gentoo as well. QtWidgetsmod.sip is located in the same place:
/usr/share/sip/PyQt5/QtWidgets/QtWidgetsmod.sip

Where is the calibre build expecting it to be?

Last edited by snappahead; 07-28-2021 at 02:08 AM.
snappahead is offline   Reply With Quote
Old 07-28-2021, 02:48 AM   #5
kovidgoyal
creator of calibre
kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.
 
kovidgoyal's Avatar
 
Posts: 43,857
Karma: 22666666
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
The calibre build doesnt expect it to be anywhere, that would be sip from the pyqt package. You will need to figure out just how gentoo has butchered their pyqt packaging and workaround it.
kovidgoyal is offline   Reply With Quote
Advert
Old 07-28-2021, 04:44 AM   #6
snappahead
Junior Member
snappahead began at the beginning.
 
Posts: 3
Karma: 10
Join Date: Jul 2021
Device: Kindle
Let me rephrase the question, so perhaps you can provide a more useful answer.
Where is the file located on your system when you successfully build calibre?
snappahead is offline   Reply With Quote
Old 07-28-2021, 06:26 AM   #7
kovidgoyal
creator of calibre
kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.
 
kovidgoyal's Avatar
 
Posts: 43,857
Karma: 22666666
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
You seem to think the path is hardcoded somewhere, calibre is built on multiple systems. But sure, here you go:

/usr/share/sip/PyQt5/QtWidgets/QtWidgetsmod.sip

and

/usr/lib/python3.9/site-packages/PyQt5/bindings/QtWidgets/QtWidgetsmod.sip
kovidgoyal is offline   Reply With Quote
Old 07-28-2021, 04:06 PM   #8
snappahead
Junior Member
snappahead began at the beginning.
 
Posts: 3
Karma: 10
Join Date: Jul 2021
Device: Kindle
On the contrary, I'm trying to discover the differences there are, in an attempt to track down why the build isn't continuing.
Gentoo does not have the python3.*/site-packages/PyQt5/bindings directory created - an initial test of symlinking the missing *.sip files to that path does get the build to progress beyond the error reported. It then fails at:

Querying qmake about your Qt installation...
/usr/lib64/qt5/bin/qmake -query
These bindings will be built: pictureflow.
Generating the pictureflow bindings...
-c: Q_PID is undefined

Will keep investigating and see what I can find - that is - if it is of interest.
snappahead is offline   Reply With Quote
Old 07-28-2021, 11:36 PM   #9
kovidgoyal
creator of calibre
kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.
 
kovidgoyal's Avatar
 
Posts: 43,857
Karma: 22666666
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
Doesn't gentoo have a calibre ebuild? Just read that to learn whatever it is you need to do to get it to build with gentoo's sip/PyQt package.
kovidgoyal is offline   Reply With Quote
Old 07-30-2021, 12:45 AM   #10
akadaedalus
Enthusiast
akadaedalus began at the beginning.
 
Posts: 28
Karma: 10
Join Date: Jun 2008
Device: Sony PRS-500
Quote:
Originally Posted by kovidgoyal View Post
Doesn't gentoo have a calibre ebuild? Just read that to learn whatever it is you need to do to get it to build with gentoo's sip/PyQt package.
It's the ebuild that's failing. Since other people have reported this and there's no clear resolution, it made sense to seek advice from you or the person who reported the problem. No need to be prickly.
akadaedalus is offline   Reply With Quote
Old 07-30-2021, 02:00 AM   #11
kovidgoyal
creator of calibre
kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.
 
kovidgoyal's Avatar
 
Posts: 43,857
Karma: 22666666
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
This is an issue with sip-build as produced by the gentoo package. Report it on the gentoo bug tracker.
kovidgoyal is offline   Reply With Quote
Old 07-31-2021, 04:35 PM   #12
brainiacghost
Junior Member
brainiacghost began at the beginning.
 
Posts: 2
Karma: 10
Join Date: Jul 2021
Device: Kindle
Quote:
Originally Posted by kovidgoyal View Post
This is an issue with sip-build as produced by the gentoo package. Report it on the gentoo bug tracker.
It has been reported on the gentoo bug tracker, this is people trying to work out a resolution, whilst calibre is a decent piece of software, there's no need to be rude to people trying to figure out a solution to a problem.
brainiacghost is offline   Reply With Quote
Old 08-01-2021, 12:05 AM   #13
kovidgoyal
creator of calibre
kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.kovidgoyal ought to be getting tired of karma fortunes by now.
 
kovidgoyal's Avatar
 
Posts: 43,857
Karma: 22666666
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
Quote:
Originally Posted by brainiacghost View Post
It has been reported on the gentoo bug tracker, this is people trying to work out a resolution, whilst calibre is a decent piece of software, there's no need to be rude to people trying to figure out a solution to a problem.
You think this is me being rude? You have a rude awakening ahead of you.

This is a bug in the distro package. One in a LONG line of bugs in distro packages. ALL of which end up wasting my time. It needs to be fixed in the distro. As I have posted on the calibre linux page for decades, in big, bold, red colored text

Quote:
WARNING: calibre is a highly complex piece of software with lots of very finicky dependencies. If you install from source, you are on your own. Please do not open bug reports or expect any form of support. You have been warned.
I dont know why all these Linux distros think they are capable of modifying upstream software. They just cause endless breakage and waste people's time. A plague on all their houses.

As for this issue, despite the fact that I absolutely loathe squandering my time on distro created problems, I pointed out the problem days ago:

Quote:
The calibre build doesnt expect it to be anywhere, that would be sip from the pyqt package. You will need to figure out just how gentoo has butchered their pyqt packaging and workaround it.
I suggest you read the ebuilds for sip/sip-build/sip-pyqt5/pyqt5 in gentoo, find out how they are modifying upstream PyQt5, undo that, and sip build will probably start working again.
kovidgoyal is offline   Reply With Quote
Old 08-01-2021, 04:45 AM   #14
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,422
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
*puts on distro packaging hat*

I would suggest that Gentoo take a look at how Arch Linux packages sip and PyQt5. I took a hasty look at the ebuilds and a massive red flag to me, is that Gentoo appears to be using sip4 and configure.py in order to build modern versions of PyQt5, which is IIRC entirely unsupported by PyQt5 and anyways involves using sip4 so uhhhhhhhhhhhh.

Can't possibly have a problem with sip-build as produced by the gentoo package, when your current technology stack doesn't use sip-build.

Calibre does use sip5, even in the ebuilds, so they're actually mixing sip4 and sip5 in the technology stack. This is technically not a modification of anything, and there is nothing to undo. It is, however, butchered.

I recommend the Gentoo developers seek guidance on the PyQt5 mailing list regarding the correct way to fundamentally package the technology stack, rather than deferring bugs to users and then again to arbitrary downstream projects that use PyQt5 as an ordinary consumer rather than somehow being the go-to experts in packaging PyQt5.

Failing that, they could defer bugs to users, and those users could seek guidance on the PyQt5 mailing list.

Failing that, either the Gentoo maintainers or the users could read the PyQt5 documentation (either the website documentation or the README file in the source tarball), which instructs users installing from source to use sip-install and does not mention configure.py at all.

Any or all of these attempts at seeking resolution are both:
  • more productive
  • less "rude" (???)

than interrogating the developer of one software project, about why a different software project isn't working.

After you've already been told by that developer, that the problem lies in the different software project.

Look, I could understand asking here in the first place during initial information gathering, but after having been told where the root of the problem is, there is simply no call to continue to reply with "Let me rephrase the question, so perhaps you can provide a more useful answer." or " it made sense to seek advice from you". The lot of you have sought advice, received it, and are roundly ignoring it.

It's not Kovid's job to know, figure out, or explain why the PyQt5 installation on Gentoo is broken. Honestly, it's not my job either, but at least it's adjacent to my job even if my distro actually works fine.

Last edited by eschwartz; 08-01-2021 at 11:43 AM.
eschwartz is offline   Reply With Quote
Old 08-01-2021, 04:55 AM   #15
eschwartz
Ex-Helpdesk Junkie
eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.eschwartz ought to be getting tired of karma fortunes by now.
 
eschwartz's Avatar
 
Posts: 19,422
Karma: 85397180
Join Date: Nov 2012
Location: The Beaten Path, USA, Roundworld, This Side of Infinity
Device: Kindle Touch fw5.3.7 (Wifi only)
Note that Gentoo also upgraded their ebuilds to stop patching calibre with a revert of commit "Move to SIP v4" to go back to the sip v4 setup (which worked, because everything used sip v4). But they didn't add PyQt-builder as a build dependency, even though they added sip-5, and even though sip-5 uses PyQt-builder as a plugin.

I can only assume the person who reported that the change worked, had additional packages installed locally, and thus didn't notice the build dependency (which is, however, listed in calibre's list of sources...)


Sorry, my bad -- sip-5 is not added, sip 4 is still a pinned dependency, but if you happen to have sip-5 installed as an additional slot then the patch is no longer applied.

Does Gentoo not have mechanisms for building packages in isolated containers that don't have leaky implied build-deps due to other applications being coincidentally installed?

Last edited by eschwartz; 08-01-2021 at 11:49 AM.
eschwartz is offline   Reply With Quote
Reply


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Apple Mac now have a file extension ".iba" for the program "iBooks Author." brucehobson Calibre 3 09-15-2014 07:46 PM
Kindlet gives "Unable to find class Main" Sothh Kindle Developer's Corner 4 06-27-2013 08:01 PM
Custom column: "Updated date", when adding new "versions" of the same file? enriquep Library Management 16 11-03-2011 10:46 AM
"[Error 2] The system cannot find the file specified: u'E:\\'" Nyssa Calibre 3 03-17-2011 08:08 PM


All times are GMT -4. The time now is 01:36 AM.


MobileRead.com is a privately owned, operated and funded community.