[pyqtdeploy] Failing at building the demo

Charles peacech at gmail.com
Sat Mar 9 14:48:21 GMT 2024


Do you have libxcb.so platform plugin in your qt directory?

If not you need to rebuild qt again, make sure that requirements listed at
https://doc.qt.io/qt-5/linux-requirements.html are installed and make sure
the xcb platform plugin is built.

On Sat, Mar 9, 2024 at 8:38 PM umbertofilippo <umbertofilippo at tiscali.it>
wrote:

> Hello everyone,
>
>
> just a quick update: I did the KC's three lines trick and it did the job.
>
> I am now stuck at yet another error, which is
>
> Generating the Makefiles...
> /home/umberto/games/python/pyqt-demo/sysroot-linux-64/Qt/bin/qmake
> -recursive PyQt5.pro
> sip-install:
> '/home/umberto/games/python/pyqt-demo/sysroot-linux-64/Qt/bin/qmake
> -recursive PyQt5.pro' failed returning 3
> Info: creating stash file /tmp/tmphwkq3ix1/.qmake.stash
> Reading /tmp/tmphwkq3ix1/QtCore/QtCore.pro
> Reading /tmp/tmphwkq3ix1/QtNetwork/QtNetwork.pro
> Reading /tmp/tmphwkq3ix1/QtGui/QtGui.pro
> Reading /tmp/tmphwkq3ix1/QtWidgets/QtWidgets.pro
> Reading /tmp/tmphwkq3ix1/QtX11Extras/QtX11Extras.pro
> Project ERROR: Unknown module(s) in QT: x11extras
> pyqtdeploy-sysroot: execution of 'sip-install' failed: returned exit code 1
>
>
> I am attaching the whole log again in case it's useful to better
> understand what went wrong.
>
>
> Any idea how to move on from here?
>
>
> Sorry for spamming but I hope this thread not only will fix my issues but
> also will serve as a reference for building with a Linux machine (or me and
> for others hopefully).
>
>
> Umberto
>
>
> On 3/8/24 20:32, Kaiser Chief wrote:
>
> Hi,
>
> "qt-everywhere-opensource-src-5.15.10.tar.xz" is the right file you are
> looking for.
>
> Unfortunately, "pyqtdeploy/sysroot/plugins/Qt.py" is looking for
> 'qt-everywhere-src-{}.tar.xz'
>
> You could fix that line (#53) in "pyqtdeploy/sysroot/plugins/Qt.py"with:
> ` qt-everywhere-opensource-src-{}.tar.xz `
>
> However, you might encounter problems down the line probably...
>
> I would recommend to stick with Qt5.15.2 and do necessary changes.
> Alternatively, you could built qt-everywhere-opensource-src-5.15.10.tar.xz
> from source manually and tell pyqtdeploy where to look for Qt install (but
> that's a bit more painful).
>
>
> Best regards,
>
> KC
>
> Le ven. 8 mars 2024 à 19:21, umbertofilippo <umbertofilippo at tiscali.it> a
> écrit :
>
>> Thanks again for the feedback,
>>
>>
>> I have just tried to update the sysroot.toml like this:
>>
>>
>> # Qt
>> ##########################################################################
>>
>> [Qt]
>> version = "5.15.10" # original was "5.15.2"
>> edition = "opensource"
>>
>> and now it seems the link to download the qt source can no longer be
>> found.
>>
>>
>> Qt: installing component...
>> Qt: looking for 'qt-everywhere-src-5.15.10.tar.xz' in
>> /home/umberto/games/python/pyqt-demo.
>> Qt: downloading 'qt-everywhere-src-5.15.10.tar.xz' from
>> https://download.qt.io/archive/qt/5.15/5.15.10/single/...
>> Qt: '
>> https://download.qt.io/archive/qt/5.15/5.15.10/single/qt-everywhere-src-5.15.10.tar.xz'
>> was not found.
>> pyqtdeploy-sysroot: Qt: unable to find
>> '/home/umberto/.pyqtdeploy/cache/qt-everywhere-src-5.15.10.tar.xz'.
>>
>>
>> The only similar thing I can see in
>> https://download.qt.io/archive/qt/5.15/5.15.10/single/ is
>> "qt-everywhere-opensource-src-5.15.10.tar.xz"
>>
>>
>> If there is no easy way to solve this you can think of I will probably
>> try to test adding those 3 lines to qtbase/src/corelib/global/qglobal.h
>>
>>
>> Thanks again so much for your kind and feedback, much appreciated!
>>
>>
>> Umberto
>>
>>
>> On 3/8/24 19:38, Kaiser Chief wrote:
>>
>> To complement Charles' answer, it seems like someone found a quick fix
>> with GCC11, in case you are reluctant to move back to GCC10:
>> https://forum.qt.io/topic/136672/error-installing-qt-everywhere-src-5-15-2-on-ubuntu-22-04/2
>>
>> add these 3 lines at the top of qtbase/src/corelib/global/qglobal.h : (I
>> haven't tested that)
>> ```
>> #ifdef __cplusplus
>> #include <limits>
>> #endif
>> ```
>>
>> For ref, the QT bug associated is:
>> https://bugreports.qt.io/browse/QTBUG-90395
>> It has been fixed for QT5.15.9
>> <https://bugreports.qt.io/issues/?jql=project+%3D+QTBUG+AND+fixVersion+%3D+5.15.9>,
>> but since you are using the default QT5.15.2, well it's not fixed.
>>
>> Best regards,
>>
>> KC
>>
>> Le ven. 8 mars 2024 à 18:28, Charles <peacech at gmail.com> a écrit :
>>
>>> With C++ the relevant error is the first error line, the rest is usually
>>> noise. If you google gcc numeric_limits is not a class template you will
>>> find https://bugs.gentoo.org/768342
>>>
>>> If you use gcc 11 then use gcc 10 otherwise patch qt headers as in
>>> https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92d54be896563102786238893a9c645b8bdb43ef
>>>
>>> On Sat, Mar 9, 2024 at 12:49 AM umbertofilippo <
>>> umbertofilippo at tiscali.it> wrote:
>>>
>>>> Moving on,
>>>>
>>>>
>>>> I have tried to remove OpenSSL from the "sysroot.toml" since it is not
>>>> required, and now the process seems to go further, but I am stuck at a new
>>>> error:
>>>>
>>>>
>>>> Verifying host architecture 'linux-64'...
>>>> Verifying target architecture 'linux-64'...
>>>> zlib: verifying...
>>>> Qt: verifying...
>>>> Python: verifying...
>>>> SIP: verifying...
>>>> PyQt: verifying...
>>>> PyQt3D: verifying...
>>>> PyQtChart: verifying...
>>>> PyQtDataVisualization: verifying...
>>>> PyQtNetworkAuth: verifying...
>>>> PyQtPurchasing: verifying...
>>>> QScintilla: verifying...
>>>> zlib: installing component...
>>>> Qt: installing component...
>>>> Qt: downloading 'qt-everywhere-src-5.15.2.tar.xz' from
>>>> https://download.qt.io/archive/qt/5.15/5.15.2/single/...
>>>> pyqtdeploy-sysroot: execution of './configure' failed: returned exit
>>>> code 2
>>>>
>>>>
>>>> What can be the cause of this new error? I see there is a new folder
>>>> now in the original pyqt demo directory called "sysroot-linux-64" and
>>>> inside I see there's "sysroot-linux-64/build/qt-everywhere-src-5.15.2" with
>>>> a "configure" file, but other than this I have no clue sincerely on why it
>>>> is failing.
>>>>
>>>>
>>>> I have attached the content of running build-demo.py with --verbose
>>>>
>>>>
>>>> Hope someone can help me. Thanks.
>>>>
>>>>
>>>> On 3/8/24 12:18, umbertofilippo wrote:
>>>>
>>>> Hi and many thanks for you feedback!
>>>>
>>>>
>>>> First of all let me tell that I am very interested in finding a
>>>> solution to this problem, and I will try to do my best if I can contribute
>>>> in case it's needed.
>>>>
>>>>
>>>> I just checked, and this is what I can see in my
>>>> /usr/include/openssl/opensslv.h file. Cannot tell though if pyqtdeploy is
>>>> supposed to work or not given these lines...
>>>>
>>>>
>>>> /*
>>>>  * SECTION 4: BACKWARD COMPATIBILITY
>>>>  */
>>>>
>>>> # define OPENSSL_VERSION_TEXT "OpenSSL 3.0.2 15 Mar 2022"
>>>>
>>>> /* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
>>>> # ifdef OPENSSL_VERSION_PRE_RELEASE
>>>> #  define _OPENSSL_VERSION_PRE_RELEASE 0x0L
>>>> # else
>>>> #  define _OPENSSL_VERSION_PRE_RELEASE 0xfL
>>>> # endif
>>>> # define OPENSSL_VERSION_NUMBER          \
>>>>     ( (OPENSSL_VERSION_MAJOR<<28)        \
>>>>       |(OPENSSL_VERSION_MINOR<<20)       \
>>>>       |(OPENSSL_VERSION_PATCH<<4)        \
>>>>       |_OPENSSL_VERSION_PRE_RELEASE )
>>>>
>>>> # ifdef  __cplusplus
>>>> }
>>>> # endif
>>>>
>>>> # include <openssl/macros.h>
>>>> # ifndef OPENSSL_NO_DEPRECATED_3_0
>>>> #  define HEADER_OPENSSLV_H
>>>> # endif
>>>>
>>>> #endif
>>>>
>>>>
>>>> Umberto
>>>>
>>>>
>>>> On 3/7/24 19:11, Kaiser Chief wrote:
>>>>
>>>> Hi,
>>>>
>>>> To complement my previous message (and after doing a quick search
>>>> through the source code):
>>>> * The script "OpenSSL.py" is looking for "OPENSSL_VERSION_NUMBER" in
>>>> "/usr/include/openssl/opensslv.h"
>>>> * In OpenSSL 1.1.1 (which is installed on my Linux), I can see the line
>>>> "#define OPENSSL_VERSION_NUMBER" in  "/usr/include/openssl/opensslv.h".
>>>>
>>>> Can you check that you have that line in your header file too?
>>>>
>>>> If not, it's probably that OpenSSL updated their header files and put
>>>> the VERSION_NUMBER somewhere else...
>>>>
>>>> If you want to run the demo, I would recommend you install the default
>>>> versions as written in the `sysroot.toml`
>>>>
>>>> If there are fixes to make for each "version grepping", I believe that
>>>> Phil had a way to contribute to plugins for pyqtdeploy, but can't remember
>>>> where...
>>>>
>>>> Best regards,
>>>>
>>>> KC
>>>>
>>>> Le jeu. 7 mars 2024 à 17:56, Kaiser Chief <kaiser.chiefmail at gmail.com>
>>>> a écrit :
>>>>
>>>>> Hi,
>>>>>
>>>>> According to the sysroot help page (
>>>>> https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/sysroot.html#openssl),
>>>>> if you have configured your `sysroot.toml` like this:
>>>>> ```
>>>>>
>>>>> [OpenSSL.linux]version = ""install_from_source = false
>>>>>
>>>>> ```
>>>>>
>>>>> Then, on Linux, the OpenSSL library used will be the one installed on
>>>>> your OS with no assumption on the version (so that should work in your
>>>>> example).
>>>>> Now, that's what is provided in the demo folder for
>>>>> `pyqtdeploy-3.3.0`, so that's odd.
>>>>>
>>>>> Therefore, it could be that the `pyqtdeploy-sysroot` functionality is
>>>>> struggling to extract the version number from your OS-installed OpenSSL.
>>>>>
>>>>> ---
>>>>>
>>>>> I am not of great help with that comment, however, I would like to
>>>>> suggest, if it's your first time with pyqtdeploy to give a try at my Github
>>>>> repo:
>>>>>
>>>>> https://github.com/achille-martin/pyqt-crom
>>>>>
>>>>> This repo aims at demonstrating how beginner devs, intermediate devs
>>>>> and expert devs can benefit from pyqtdeploy.
>>>>> It also offers a few simple tutorials to get started with pyqtdeploy
>>>>> (simpler than the demo in the official pyqtdeploy package) and optimises
>>>>> bits of the tool regarding the user interface (for now).
>>>>>
>>>>> I can support you with your initial journey on discovering pyqtdeploy
>>>>> through my repo if you wish.
>>>>>
>>>>> Best regards,
>>>>>
>>>>> KC
>>>>>
>>>>> Le jeu. 7 mars 2024 à 17:06, umbertofilippo <umbertofilippo at tiscali.it>
>>>>> a écrit :
>>>>>
>>>>>> Hello everyone, first time here for me :)
>>>>>>
>>>>>>
>>>>>> I was giving pyqtdeploy a try and I am stuck at the very first step
>>>>>> of
>>>>>> the "Building the Demo" page.
>>>>>>
>>>>>>
>>>>>> I am on a Linux-64 machine. I am following the tutorial at
>>>>>> https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/demo.html
>>>>>> and
>>>>>> I have downloaded the demo files from
>>>>>>
>>>>>> https://files.pythonhosted.org/packages/44/d4/978017382f0ecc48601944c3fc0f58a5c5075a1d3acd48d09c11ee471b05/pyqtdeploy-3.3.0.tar.gz
>>>>>>
>>>>>>
>>>>>> I have created a virtual python environment with the following
>>>>>> packages
>>>>>> and versions installed:
>>>>>>
>>>>>> Name,Version
>>>>>> _libgcc_mutex,0.1
>>>>>> _openmp_mutex,4.5
>>>>>> bzip2,1.0.8
>>>>>> ca-certificates,2024.2.2
>>>>>> ld_impl_linux-64,2.40
>>>>>> libexpat,2.6.1
>>>>>> libffi,3.4.2
>>>>>> libgcc-ng,13.2.0
>>>>>> libgomp,13.2.0
>>>>>> libnsl,2.0.1
>>>>>> libsqlite,3.45.1
>>>>>> libuuid,2.38.1
>>>>>> libxcrypt,4.4.36
>>>>>> libzlib,1.2.13
>>>>>> ncurses,6.4
>>>>>> openssl,3.2.1
>>>>>> pip,24.0
>>>>>> pyqt5,5.15.10
>>>>>> pyqt5-qt5,5.15.2
>>>>>> pyqt5-sip,12.13.0
>>>>>> pyqtdeploy,3.3.0
>>>>>> python,3.12.2
>>>>>> readline,8.2
>>>>>> setuptools,69.1.1
>>>>>> tk,8.6.13
>>>>>> toml,0.10.2
>>>>>> tzdata,2024a
>>>>>> wheel,0.42.0
>>>>>> xz,5.2.6
>>>>>>
>>>>>> I have tried to run the command "python build-demo.py" straight away,
>>>>>> but I am getting the following error:
>>>>>>
>>>>>> OpenSSL: verifying...
>>>>>> OpenSSL: determining installed version from
>>>>>> '/usr/include/openssl/opensslv.h'.
>>>>>> pyqtdeploy-sysroot: OpenSSL: unable to extract the version number.
>>>>>>
>>>>>>
>>>>>> OpenSSL is installed on my machine and the result of doing "openssl
>>>>>> version" is "OpenSSL 3.2.1 30 Jan 2024 (Library: OpenSSL 3.2.1 30 Jan
>>>>>> 2024)"
>>>>>>
>>>>>>
>>>>>> Am I supposed to install the exact versions of all the components
>>>>>> found
>>>>>> in the ""sysroot.toml" file to be able to run "python build-demo.py"
>>>>>> successfully?
>>>>>>
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>>
>>>>>> Umberto
>>>>>>
>>>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20240309/7dec494d/attachment-0001.htm>


More information about the PyQt mailing list