11-14-2023, 10:14 AM | #31 | |
Groupie
Posts: 177
Karma: 10
Join Date: Nov 2015
Location: Europe EEC
Device: Kindle Fire HD6
|
Quote:
Found your new page and I'll certainly have a go a bit later in the day. Thanks. |
|
11-14-2023, 10:30 AM | #32 | |
Grand Sorcerer
Posts: 28,040
Karma: 199464182
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Quote:
I'm not familiar with the Ubuntu Studio derivative, but if 22.04 uses the Standard Jammy repositories, then it should have access to Qt6.2.4. That should be sufficient to build Sigil 2.0.2 with Qt6, but it might not have use of all of the whistles and bells. Qt6.4 or 6.5 would be better. The default Python 3.10 should be fine. Last edited by DiapDealer; 11-14-2023 at 10:43 AM. |
|
Advert | |
|
11-14-2023, 02:26 PM | #33 |
Junior Member
Posts: 9
Karma: 10
Join Date: Nov 2023
Device: Sigil
|
svg packages on ubuntu
For what it's worth - that clue (above) to install qt6-svg seems to fix my missing icon problems (all icons on UI main screen were not showing).
Looking up in the Ubuntu package search for qt6 on jammy, shows svg packages: libqt6svg6, libqt6svg6-dev, and libqt6svgwidgets6. Installing those with: Code:
sudo apt-get install libqt6svg6 libqt6svg6-dev libqt6svgwidgets6 Yay. Of course, my path to this state is probably not the straight forward route other experts have taken. I've installed a lot of stuff that isn't needed, I think, trying to get the cmake command happy. Here's the history dump of installs (some don't work): Code:
sudo apt-get install libqt6core5compat6-dev sudo apt-get install libqt6webenginecore6 sudo apt-get install libqt6webenginecore6-bin sudo apt-get install libqt6webenginecore6-bin sudo apt-get install libqt6webenginecore6 sudo apt-get install libqt6webengine6-data sudo apt-get install libqt6webenginequick6 sudo apt-get install libqt6webenginewidgets6 sudo apt-get -y install vulkan-tools sudo apt-get -y install linguist-qt6 sudo apt-get -y install linguist-qt6-dev sudo apt-get -y install qt6-tools-dev-tools sudo apt-get -y install qt6-translations-l10n sudo apt-get install linguist-qt6 sudo apt-get install qt6-tools sudo apt-get install linguist-qt6 sudo apt-get install qt6-tools-dev sudo apt-get -y install linguist-qt6 sudo apt-get -y install liblinguist-qt6 sudo apt-get install python3-dev python3-pip python3-lxml python3-six python3-css-parser python3-dulwich sudo apt-get install python3-tk python3-pyqt6 python3-pyqt6.qtwebengine python3-html5lib python3-regex 3-pillow python3-cssselect python3-chardet sudo apt-get install python3-dev sudo apt-get install libqt6svg6 libqt6svg6-dev libqt6svgwidgets6 Code:
#!/bin/bash mkdir --parents ~/code/Sigil/sigil-build cd ~/code/Sigil/sigil-build cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/opt/sigil -DCMAKE_BUILD_TYPE=Release -DQt6_DIR=/usr/lib/qt6 -DTRY_NEWER_FINDPYTHON3=1 ../../Sigil |
11-14-2023, 02:54 PM | #34 |
Grand Sorcerer
Posts: 28,040
Karma: 199464182
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
You should only need the libqt6svg6 to fix the icon issue. And it's only a runtime requirement, so it can even be installed after building Sigil.
You don't need libqt6svg6-dev or libqt6svgwidgets6 to build or run Sigil. The current Build_on_Linux.md file in the /docs folder on github should now have the complete list of qt6 dependencies needed to build and run Sigil on Debian/Ubuntu. Code:
sudo apt-get install qt6-webengine-dev qt6-base-dev-tools qt6-tools-dev qt6-tools-dev-tools qt6-5compat-dev libqt6svg6 Last edited by DiapDealer; 11-14-2023 at 03:50 PM. |
11-14-2023, 03:56 PM | #35 |
Junior Member
Posts: 9
Karma: 10
Join Date: Nov 2023
Device: Sigil
|
QtWebEngineWidgets missing
From the instructions on testing the plugin framework, and running the testplugin I get close, but not quite:
Code:
Status: success Verify sys.path settings manually /opt/sigil/share/sigil/plugin_launchers/python /usr/lib/python310.zip /usr/lib/python3.10 /usr/lib/python3.10/lib-dynload /home/derrick/.local/lib/python3.10/site-packages /usr/local/lib/python3.10/dist-packages /usr/lib/python3/dist-packages /home/derrick/.local/share/sigil-ebook/sigil/plugins/testplugin Verifying proper Python packages are available Checking GUI modules Python Package: PyQt5 (/usr/lib/python3/dist-packages/PyQt5/QtWidgets.abi3.so) Found Python Package: PyQt5 QtWebEngineWidgets Missing Python Package: tkinter (/usr/lib/python3.10/tkinter/__init__.py) Found Python Package: PIL (/usr/lib/python3/dist-packages/PIL/__init__.py) Found Python Package: cssselect (/usr/lib/python3/dist-packages/cssselect/__init__.py) Found Python Package: css-parser (/usr/lib/python3/dist-packages/css_parser/__init__.py) Found Python Package: html5lib (/usr/lib/python3/dist-packages/html5lib/__init__.py) Found Python Package: lxml (/usr/lib/python3/dist-packages/lxml/__init__.py) Found Python Package: regex (/usr/lib/python3/dist-packages/regex/__init__.py) Found Python Package: chardet (/usr/lib/python3/dist-packages/chardet/__init__.py) Found Python Package: six (/usr/lib/python3/dist-packages/six.py) Found Python Package: dulwich (/usr/lib/python3/dist-packages/dulwich/__init__.py) Found Python Package: urllib3 (/usr/lib/python3/dist-packages/urllib3/__init__.py) Found Verifying Sigil Python Libraries can be found/loaded Sigil Python library: epub_utils Found Sigil Python library: quickparser Found Sigil Python library: hrefutils Found Sigil Python library: compatibility_utils Found Sigil Python library: sigil_bs4 Found Verifying Hunspell Spell Checking Hunspell en_US affix file and dictionary Found Hunspell shared library Found Hunspell spellchecking works True Verifying Sigil Gumbo Library operation Sigil Gumbo BS4 Adapter library Found Sigil BS4/Gumbo Parser works True Verifying selected basic plugin interface elements bk.text_iter() works True Listing manifested files... Text/Section0001.xhtml toc.ncx bk.manifest_iter() works True bk.spine_iter() works True bk.other_iter() works True reading a non-manifest book file works True reading a specific OPF manifest id works True writing to a specific OPF manifest id works True Launcher Version 20231026 ePub Version 2.0 adding your own file to the manifest works True basename to id mapping works True deleting our added file works True Failure - 1 Tests of Plugin Operations Failed This is after running Code:
sudo apt-get install python3-pyqtbuild python3-pyqtgraph qt6-webengine-dev Installing qtwebengine5-dev as suggested by the search for WebEngineWidgets did not resolve it. Perhaps the test needs to be updated to Qt6 as well. Last edited by derrickoswald; 11-14-2023 at 03:58 PM. Reason: link to ubuntu package search |
Advert | |
|
11-14-2023, 04:22 PM | #36 |
Grand Sorcerer
Posts: 28,040
Karma: 199464182
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
You seem to be confusing what is needed to build/run Sigil and what is needed to run Python 3rd-party plugins. I wish they were one and the same, but they're not on Linux.
The latest test plugin (testplugin_v020.zip) WILL test to make make sure that all Python plugin requirements are met. Qt5 Sigil uses PyQt5 but Qt6 Sigil will use PySide6. And as noted in the build instructions, neither Debian nor Ubuntu currently provide packages for PySide6. So you will need to install it yourself using pip or something else. There is no PyQt5 dependency for Sigil built with Qt6 using testplugin_v020.zip. python3-pyqtbuild and python3-pyqtgraph are not needed for anything Sigil-related. Not sure where you got the idea they might be. Last edited by DiapDealer; 11-14-2023 at 07:19 PM. |
11-14-2023, 06:05 PM | #37 | |
Groupie
Posts: 177
Karma: 10
Join Date: Nov 2015
Location: Europe EEC
Device: Kindle Fire HD6
|
Quote:
I have all the python3 packages you list and they are at 3.10 I also have the three 3rd party packages you list. But Code:
sudo apt-get install qt6-webengine-dev qt6-base-dev-tools qt6-tools-dev qt6-tools-dev-tools qt6-5compat-dev libqt6svg6 What is the role of that package? |
|
11-14-2023, 06:48 PM | #38 | |
Grand Sorcerer
Posts: 28,040
Karma: 199464182
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Quote:
It's proving rather difficult to find package names that will work with both Debian and Ubuntu they're changing them from version to version it seems! Try libqt6core5compat6-dev in place of qt6-5compat-dev. It looks like it will pull in everything needed on 22.04. EDIT: it seems the qt6-5compat-dev package is not available until Ubuntu Lunar. So a combination of qt6-base-dev-tools and libqt6core5compat6-dev should work for both Jammy+ and Debian 12+ (I think). Last edited by DiapDealer; 11-14-2023 at 07:02 PM. |
|
11-14-2023, 07:11 PM | #39 | |
Groupie
Posts: 177
Karma: 10
Join Date: Nov 2015
Location: Europe EEC
Device: Kindle Fire HD6
|
Quote:
Bearing in mind that I have Sigil 2.0.2 installed with Qt5, do I have to remove that installation or even some of its packages? Or can I just build Sigil 2.0.2 with Qt6 on top of the Qt5 version? |
|
11-14-2023, 07:44 PM | #40 | |
Grand Sorcerer
Posts: 28,040
Karma: 199464182
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Quote:
|
|
11-15-2023, 01:36 PM | #41 |
Groupie
Posts: 177
Karma: 10
Join Date: Nov 2015
Location: Europe EEC
Device: Kindle Fire HD6
|
My first attempt at building Sigil 2.0.2 with Qt6 has failed at the configuration stage. I tried to use the system libraries for hunspell, pcre2, minizip. The consol command I used was :
Code:
cmake -G "Unix Makefiles" -DUSE_SYSTEM_LIBS=1 -DCMAKE_BUILD_TYPE=Release ../sigil-src The consol output shows that ZLIB and MiniZip were found but no mention of hunspell or pcre2. A few lines further down, it indicates cmake was using bundled Hunspell and PCRE2. This, I suppose is not so serious as what follows. Next failure was: windows.h not found and the CMakeError.log shows that as a fatal error. A few more lines down, the consol output shows: Code:
Looking for C++ include type_traits.h -- Looking for C++ include type_traits.h - not found -- Looking for C++ include bits/type_traits.h -- Looking for C++ include bits/type_traits.h - not found Further down, I find: Code:
Looking for _strtoi64 - not found Then the consol output turns red : Code:
The imported target "Qt6::qwebengine_convert_dict" references the file "/usr/lib/qt6/libexec/qwebengine_convert_dict" but this file does not exist. Code:
Call Stack (most recent call first): /usr/lib/x86_64-linux-gnu/cmake/Qt6WebEngineCoreTools/Qt6WebEngineCoreToolsConfig.cmake:47 (include) /usr/lib/x86_64-linux-gnu/cmake/Qt6WebEngineCore/Qt6WebEngineCoreDependencies.cmake:76 (find_package) /usr/lib/x86_64-linux-gnu/cmake/Qt6WebEngineCore/Qt6WebEngineCoreConfig.cmake:50 (include) /usr/lib/x86_64-linux-gnu/cmake/Qt6/Qt6Config.cmake:219 (find_package) src/qt6sigil.cmake:27 (find_package) src/CMakeLists.txt:685 (include) Code:
CMake Warning at /usr/lib/x86_64-linux-gnu/cmake/Qt6/Qt6Config.cmake:219 (find_package): Found package configuration file: /usr/lib/x86_64-linux-gnu/cmake/Qt6WebEngineCore/Qt6WebEngineCoreConfig.cmake but it set Qt6WebEngineCore_FOUND to FALSE so package "Qt6WebEngineCore" is considered to be NOT FOUND. Call Stack (most recent call first): src/qt6sigil.cmake:27 (find_package) src/CMakeLists.txt:685 (include) |
11-15-2023, 01:56 PM | #42 | |
Grand Sorcerer
Posts: 28,040
Karma: 199464182
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Quote:
Give me a chance to parse all the info you provided, but WOW! The bit about not being able to find windows.h on Linux is whopper! To begin with, the part about using the system libs is mostly for package maintainers. I almost always build the bundled libs when I build Sigil. But if you want -DUSE_SYSTEM_LIBS=1 to really mean anything, you also need to configure with -DSYSTEM_LIBS_REQUIRED=1 (from the advanced section). Othwise Sigil will use it's own bundled versions for any of the three it fails to find on your system. -DSYSTEM_LIBS_REQUIRED=1 causes the build to fail if they're not ALL found on your system. Last edited by DiapDealer; 11-15-2023 at 02:02 PM. |
|
11-15-2023, 02:00 PM | #43 |
Sigil Developer
Posts: 8,160
Karma: 5450818
Join Date: Nov 2009
Device: many
|
Note Qt6 cmake files for specific Qt modules will report Not Found even if they actually exist and are found properly if any of their dependencies are missing.
So my guess is you are missing some dependency of Qt6 QtWebEngine. |
11-15-2023, 02:08 PM | #44 | |
Grand Sorcerer
Posts: 28,040
Karma: 199464182
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Quote:
|
|
11-15-2023, 02:08 PM | #45 |
Sigil Developer
Posts: 8,160
Karma: 5450818
Join Date: Nov 2009
Device: many
|
I think that windows.h is in by their minizip headers. We fixed an issue long long ago with that.
I recommend NOT using -DUSE_SYSTEM_LIBS=1 and see if your windows.h missing and other missing header issues go away. That would just leave the missing QtWebEngine piece to track down. |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Building the Linux standalone Sigil installer | eschwartz | Sigil | 10 | 12-20-2015 05:13 PM |
Difficulty with building sigil 0.9.0 on linux | philja | Sigil | 36 | 11-25-2015 05:38 PM |
sigil 0.8.1 building on linux | blackest | Sigil | 9 | 10-15-2014 07:22 PM |
Building Sigil from source on Linux | xingenter | Sigil | 10 | 04-29-2013 02:18 PM |
Building Sigil under Linux | st_albert | Sigil | 1 | 08-07-2011 04:19 PM |