[pyqtdeploy] Failing at building the demo

umbertofilippo umbertofilippo at tiscali.it
Fri Mar 8 19:21:29 GMT 2024


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/20240308/9e5df59b/attachment-0001.htm>


More information about the PyQt mailing list