![]() |
#1 |
Evangelist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 443
Karma: 3367292
Join Date: May 2013
Location: Ontario, Canada
Device: Kindle KB, Oasis, Pop_Os!, Jutoh, Kobo Forma
|
Problem Building Sigil on Linux Pop!_os
I've been running a flatpack version and want to "do it right" and build from source.
Following the instructions here all is well in getting the needed files installed until I hit qt6-5compat-dev. Can't find it anywhere, until I find a .deb of it in an Ubuntu site. Try and install that, get an error. Get led to other qt6-5 tools, wow is it complicated. But I get what looks like a current qt6-5 tool kit installed. Configuration gives the following error output: Spoiler:
I'll attach the log files as well. So I'm now out of my depth for sure. Any assistance welcome! |
![]() |
![]() |
![]() |
#2 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 8,439
Karma: 5702578
Join Date: Nov 2009
Device: many
|
Here is the actual error from your log file.
The imported target "Qt6::qwebengine_convert_dict" references the file "/usr/lib/qt6/libexec/qwebengine_convert_dict" but this file does not exist. Some Qt6 related package needs to provide this qwebengine_convert_dict executable. Use your package manager to determine which Qt6 package provides that executable file and install that package. If that executable file is already provided but not installed in /usr/libqt6/libexec/ then copying it to that location or creating a symlink should be enough to continue the build. Sigil itself does not use this particular executable but PageEdit does and it should exist in a proper qt6 installation. cmake is looking for it. |
![]() |
![]() |
Advert | |
|
![]() |
#3 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,341
Karma: 203719142
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
In another thread, philja mentioned their trials and tribulations that can offer you a lot of insight into building Sigil on Ubuntu (on which Pop OS is based). The snags you mentioned so far were both mentioned (and resolved) in that thread.
The seemingly missing qt6-5compat-dev package on older Ubuntu distros like Jammy was solved by using the libqt6core5compat6-dev package instead. See the following post in that other thread: https://www.mobileread.com/forums/sh...80#post4372580 The Qt6::qwebengine_convert_dict issue was solved by installing the qt6-webengine-dev-tools package. See: https://www.mobileread.com/forums/sh...98#post4372798 I expect your build will follow their Ubuntu Jammy experience so you would do well to follow that thread from the 2nd page on : https://www.mobileread.com/forums/sh...=357115&page=2 The github instructions for building Sigil with Qt6 on Linux are still based on newer versions of Ubuntu (23.04 and higher) than you're using. Jammy (22.04) will work, but there's some massaging necessary. Linux Qt6 packaging changed pretty drastically after 22.04. Last edited by DiapDealer; 01-06-2024 at 09:05 AM. |
![]() |
![]() |
![]() |
#4 |
Evangelist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 443
Karma: 3367292
Join Date: May 2013
Location: Ontario, Canada
Device: Kindle KB, Oasis, Pop_Os!, Jutoh, Kobo Forma
|
Thanks for the quick replies.
I actually did follow the philja experience. This morning after some sleep and a reboot, I double-checked that the various packages in the philja thread were installed, and tried the configuration again. Now it seems to not complain about the files missing, but throws a completely new error: Spoiler:
Seems to suddenly be looking for qt5 things? I did try the qt5 command (cmake -G "Unix Makefiles" -DUSE_QT5=1 -DCMAKE_BUILD_TYPE=Release ../sigil-src) last night just to see if it would work - no - did that set something that is now getting in the way? |
![]() |
![]() |
![]() |
#5 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 8,439
Karma: 5702578
Join Date: Nov 2009
Device: many
|
You were building with Qt6 previously right? Everything you posted was about Qt6.
If instead you arw building with Qt5 you add the -DUSE_QT5=1 otherwise do not use it. |
![]() |
![]() |
Advert | |
|
![]() |
#6 |
Evangelist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 443
Karma: 3367292
Join Date: May 2013
Location: Ontario, Canada
Device: Kindle KB, Oasis, Pop_Os!, Jutoh, Kobo Forma
|
That is right, Qt6.
I ran it with "-DUSE_QT5=1" just once as an experiment. Now running it as "cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ../sigil-src" I'm getting the Qt5 errors. |
![]() |
![]() |
![]() |
#7 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,341
Karma: 203719142
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
If you did not clean out the cmake build directory, it would still use the cached Qt5 stuff (-DUSE_QT5=1) the next go around. Just clean out the build directory you're using and reconfigure with cmake again (without the -DUSE_QT5=1 bit). At the very least, you need to delete the CMakeCache.txt file, but I'd remove it all.
I updated the build notes on Github just a bit ago to accommodate the things learned from philja's build experience on 22.04. Namely the qt6 packages needed to build (and run) Sigil. |
![]() |
![]() |
![]() |
#8 |
Evangelist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 443
Karma: 3367292
Join Date: May 2013
Location: Ontario, Canada
Device: Kindle KB, Oasis, Pop_Os!, Jutoh, Kobo Forma
|
Found a package I had missed in the philja thread -- qt6-l10n-tools
So I installed this, and now have a whole new set of errors in configure: Spoiler:
And magically, all the Qt5 messages are gone again. |
![]() |
![]() |
![]() |
#9 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,341
Karma: 203719142
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
What kind of video card/driver do you have installed? Qt6 will require a fairly decent video card and newer drivers (much more so than Qt5). With no OPEN_GL support discovered, I'm not sure there's much hope. The missing opengl is the source of all your errors, starting with the Qt6Gui module. It cascades from there.
|
![]() |
![]() |
![]() |
#10 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,341
Karma: 203719142
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Just thought of something: try installing the libgl1-mesa-dev package before trying to configure again. That package should get you the open_gl headers and includes that cmake is looking for.
|
![]() |
![]() |
![]() |
#11 | |
Evangelist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 443
Karma: 3367292
Join Date: May 2013
Location: Ontario, Canada
Device: Kindle KB, Oasis, Pop_Os!, Jutoh, Kobo Forma
|
Quote:
It Runs! Not only that, I kept the data directory from the flatpak installation, copied it in, and it all seems to work--even epubcheck. Thank You! (Brand new Thelio-3 from System76, it has bog-standard AMD video as far as I know, here are details -- Spoiler:
)
|
|
![]() |
![]() |
![]() |
#12 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,341
Karma: 203719142
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
You're welcome! I've noted the libgl1-mesa-dev package in the official github build instructions, so thanks for reporting your errors. Hopefully the efforts of people like you and philja will make things easier for others.
Your video card should be fine. I just forgot that the OpenGL dev headers and includes might not be present on systems that don't do a lot of building. Especially on those distros that split the dev stuff out by default in their packaging. Note that some plugins will be looking for PySide6 when used with Qt6-built Sigil. We left PyQt behind on our other platforms when we switched to Qt6. Unfortunately most Debian/Ubuntu-based distros don't have Pyside6 packages in their repos. There are a few workarounds for this if you run into any problems. Last edited by DiapDealer; 01-06-2024 at 02:44 PM. |
![]() |
![]() |
![]() |
#13 | |
Evangelist
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 443
Karma: 3367292
Join Date: May 2013
Location: Ontario, Canada
Device: Kindle KB, Oasis, Pop_Os!, Jutoh, Kobo Forma
|
PySide6 and DOCXImport
Quote:
Spoiler:
But I guess that is not sufficient, since I now get a message about an undefined symbol: Spoiler:
Any pointers on where to go from here? (And this isn't at all urgent, since I use LO Writer and the ODT Import works well.) |
|
![]() |
![]() |
![]() |
#14 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 8,439
Karma: 5702578
Join Date: Nov 2009
Device: many
|
I think you are seeing the same error as:
https://www.mobileread.com/forums/sh...9&postcount=21 The solution is that I think something is missing from the LD_LIBRARY_PATH setting that causes a conflict between PySide6 and Sigil that prevents PySide6 from finding the pieces it needs. DiapDealer will probably know more. See his followups in that thread. I build my own PySide6 on my Manjaro Linux box and have never seen this error. |
![]() |
![]() |
![]() |
#15 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 28,341
Karma: 203719142
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Yes. It's the same problem.
Either comment out the setting of QTLIB_DIR in Sigil's launch script (/usr/local/bin/sigil) as described here: https://www.mobileread.com/forums/sh...73#post4373073 Or use my self-contained Python AppImage for Sigil's plugin interpreter that has all of Sigil's needs installed. Download sigil-qt6-python3.11_x86_64.AppImage from the asset list at https://github.com/dougmassay/appima...ag/2023.11.2-1, save it somewhere you'll remember, mark it as executable and set it as the interpreter in Sigil's plugin preferences. The 2nd solution will work after rebuilds/updates/reinstalls, but the first solution will need to be redone after every new rebuild/update/reinstall. I really wish Debian/Ubuntu would commit to providing a PySide6 package in their repos like other distros are doing. It would make all of this unnecessary. |
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Seeking help in building Sigil on linux | philja | Sigil | 81 | 07-19-2024 12:26 PM |
Difficulty with building sigil 0.9.0 on linux | philja | Sigil | 36 | 11-25-2015 04:38 PM |
sigil 0.8.1 building on linux | blackest | Sigil | 9 | 10-15-2014 06:22 PM |
Building Sigil from source on Linux | xingenter | Sigil | 10 | 04-29-2013 01:18 PM |
Building Sigil under Linux | st_albert | Sigil | 1 | 08-07-2011 03:19 PM |