<div dir='auto'><div>Thanks for the hint Charles, I will try to test the solution as soon as I can and report back on the result.</div><div dir="auto"><br></div><div dir="auto">As far as I understand, I should do "sudo apt-get install libxcb-util-dev" as explained in https://forum.qt.io/topic/125582/qt-5-15-2-do-not-build-libqxcb-so-but-at-the-same-time-qt-5-14-0-successfully-build-libqxcb-so/4?_=1710013170647&lang=it and run "build-demo.py" again.</div><div dir="auto"><br></div><div dir="auto">Will be back soon.</div><div dir="auto"><br></div><div dir="auto">Umberto</div><div dir="auto"><div class="gmail_extra" dir="auto"><br><div class="gmail_quote">Il 9 mar 2024 15:48, Charles <peacech@gmail.com> ha scritto:<br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:'arial' , 'helvetica' , sans-serif;font-size:small">Do you have libxcb.so platform plugin in your qt directory?</div><div style="font-family:'arial' , 'helvetica' , sans-serif;font-size:small"><br></div><div style="font-family:'arial' , 'helvetica' , sans-serif;font-size:small">If not you need to rebuild qt again, make sure that requirements listed at <a href="https://doc.qt.io/qt-5/linux-requirements.html">https://doc.qt.io/qt-5/linux-requirements.html</a> are installed and make sure the xcb platform plugin is built.<br></div></div><br><div class="elided-text"><div dir="ltr">On Sat, Mar 9, 2024 at 8:38 PM umbertofilippo <<a href="mailto:umbertofilippo@tiscali.it">umbertofilippo@tiscali.it</a>> wrote:<br></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex"><u></u>

  
    
  
  <div>
    <p>Hello everyone,</p>
    <p><br>
    </p>
    <p>just a quick update: I did the KC's three lines trick and it did
      the job.</p>
    <p>I am now stuck at yet another error, which is<br>
      <br>
      Generating the Makefiles...<br>
      /home/umberto/games/python/pyqt-demo/sysroot-linux-64/Qt/bin/qmake
      -recursive PyQt5.pro<br>
      sip-install:
      '/home/umberto/games/python/pyqt-demo/sysroot-linux-64/Qt/bin/qmake
      -recursive PyQt5.pro' failed returning 3<br>
      Info: creating stash file /tmp/tmphwkq3ix1/.qmake.stash<br>
      Reading /tmp/tmphwkq3ix1/QtCore/QtCore.pro<br>
      Reading /tmp/tmphwkq3ix1/QtNetwork/QtNetwork.pro<br>
      Reading /tmp/tmphwkq3ix1/QtGui/QtGui.pro<br>
      Reading /tmp/tmphwkq3ix1/QtWidgets/QtWidgets.pro<br>
      Reading /tmp/tmphwkq3ix1/QtX11Extras/QtX11Extras.pro<br>
      Project ERROR: Unknown module(s) in QT: x11extras<br>
      pyqtdeploy-sysroot: execution of 'sip-install' failed: returned
      exit code 1</p>
    <p><br>
    </p>
    <p>I am attaching the whole log again in case it's useful to better
      understand what went wrong.</p>
    <p><br>
    </p>
    <p>Any idea how to move on from here?<br>
    </p>
    <p><br>
    </p>
    <p>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).</p>
    <p><br>
    </p>
    <p>Umberto</p>
    <p><br>
    </p>
    <div>On 3/8/24 20:32, Kaiser Chief wrote:<br>
    </div>
    <blockquote>
      
      <div dir="ltr">
        <div>Hi,</div>
        <div><br>
        </div>
        <div>
          "qt-everywhere-opensource-src-5.15.10.tar.xz" is the right
          file you are looking for.</div>
        <div><br>
        </div>
        <div>Unfortunately, "pyqtdeploy/sysroot/plugins/Qt.py" is
          looking for 'qt-everywhere-src-{}.tar.xz'</div>
        <div><br>
        </div>
        <div>You could fix that line (#53) in
          "pyqtdeploy/sysroot/plugins/Qt.py"with:</div>
        <div>`
          qt-everywhere-opensource-src-{}.tar.xz
          `</div>
        <div><br>
        </div>
        <div>However, you might encounter problems down the line
          probably...</div>
        <div><br>
        </div>
        <div>I would recommend to stick with Qt5.15.2 and do necessary
          changes.<br>
        </div>
        <div>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).</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>Best regards,</div>
        <div><br>
        </div>
        <div>KC<br>
        </div>
      </div>
      <br>
      <div class="elided-text">
        <div dir="ltr">Le ven. 8 mars 2024 à 19:21,
          umbertofilippo <<a href="mailto:umbertofilippo@tiscali.it">umbertofilippo@tiscali.it</a>>
          a écrit :<br>
        </div>
        <blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">
          <div>
            <p>Thanks again for the feedback,</p>
            <p><br>
            </p>
            <p>I have just tried to update the sysroot.toml like this:</p>
            <p><br>
            </p>
            <p># Qt
##########################################################################<br>
              <br>
              [Qt]<br>
              version = "5.15.10" # original was "5.15.2"<br>
              edition = "opensource"<br>
            </p>
            <p>and now it seems the link to download the qt source can
              no longer be found.</p>
            <p><br>
            </p>
            <p>Qt: installing component...<br>
              Qt: looking for 'qt-everywhere-src-5.15.10.tar.xz' in
              /home/umberto/games/python/pyqt-demo.<br>
              Qt: downloading 'qt-everywhere-src-5.15.10.tar.xz' from <a href="https://download.qt.io/archive/qt/5.15/5.15.10/single/">https://download.qt.io/archive/qt/5.15/5.15.10/single/</a>...<br>
              Qt:
              '<a href="https://download.qt.io/archive/qt/5.15/5.15.10/single/qt-everywhere-src-5.15.10.tar.xz">https://download.qt.io/archive/qt/5.15/5.15.10/single/qt-everywhere-src-5.15.10.tar.xz</a>'
              was not found.<br>
              pyqtdeploy-sysroot: Qt: unable to find
              '/home/umberto/.pyqtdeploy/cache/qt-everywhere-src-5.15.10.tar.xz'.</p>
            <p><br>
            </p>
            <p>The only similar thing I can see in <a href="https://download.qt.io/archive/qt/5.15/5.15.10/single/">https://download.qt.io/archive/qt/5.15/5.15.10/single/</a>
              is "qt-everywhere-opensource-src-5.15.10.tar.xz"</p>
            <p><br>
            </p>
            <p>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</p>
            <p><br>
            </p>
            <p>Thanks again so much for your kind and feedback, much
              appreciated!<br>
            </p>
            <p><br>
            </p>
            <p>Umberto<br>
            </p>
            <p><br>
            </p>
            <div>On 3/8/24 19:38, Kaiser Chief wrote:<br>
            </div>
            <blockquote>
              <div dir="ltr">
                <div>To complement Charles' answer, it seems like
                  someone found a quick fix with GCC11, in case you are
                  reluctant to move back to GCC10: <a href="https://forum.qt.io/topic/136672/error-installing-qt-everywhere-src-5-15-2-on-ubuntu-22-04/2">https://forum.qt.io/topic/136672/error-installing-qt-everywhere-src-5-15-2-on-ubuntu-22-04/2</a>
                  <br>
                </div>
                <div><br>
                </div>
                <div> add these 3 lines at the top of
                  qtbase/src/corelib/global/qglobal.h : (I haven't
                  tested that)<br>
                </div>
                <div>```</div>
                <div>#ifdef __cplusplus<br>
                  #include <limits><br>
                  #endif</div>
                <div>```</div>
                <div><br>
                </div>
                <div>For ref, the QT bug associated is: <a href="https://bugreports.qt.io/browse/QTBUG-90395">https://bugreports.qt.io/browse/QTBUG-90395</a></div>
                <div>It has been fixed for <strong><label></label> </strong>
                   <span style="height:auto"> <a href="https://bugreports.qt.io/issues/?jql=project+%3D+QTBUG+AND+fixVersion+%3D+5.15.9">QT5.15.9</a>,
                      but since you are using the default QT5.15.2, well
                      it's not fixed.</span></div>
                <div><span style="height:auto"><br>
                    </span></div>
                <div><span style="height:auto">Best regards,</span></div>
                <div><span style="height:auto"><br>
                    </span></div>
                <div><span style="height:auto">KC<br>
                    </span> </div>
              </div>
              <br>
              <div class="elided-text">
                <div dir="ltr">Le ven. 8 mars 2024
                  à 18:28, Charles <<a href="mailto:peacech@gmail.com">peacech@gmail.com</a>>
                  a écrit :<br>
                </div>
                <blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">
                  <div dir="ltr">
                    <div style="font-family:'arial' , 'helvetica' , sans-serif;font-size:small">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 <a href="https://bugs.gentoo.org/768342">https://bugs.gentoo.org/768342</a>
                      <br>
                    </div>
                    <div style="font-family:'arial' , 'helvetica' , sans-serif;font-size:small"><br>
                    </div>
                    <div style="font-family:'arial' , 'helvetica' , sans-serif;font-size:small">If you
                      use gcc 11 then use gcc 10 otherwise patch qt
                      headers as in <a href="https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92d54be896563102786238893a9c645b8bdb43ef">https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92d54be896563102786238893a9c645b8bdb43ef</a><br>
                    </div>
                  </div>
                  <br>
                  <div class="elided-text">
                    <div dir="ltr">On Sat, Mar 9,
                      2024 at 12:49 AM umbertofilippo <<a href="mailto:umbertofilippo@tiscali.it">umbertofilippo@tiscali.it</a>>
                      wrote:<br>
                    </div>
                    <blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">
                      <div>
                        <p>Moving on,</p>
                        <p><br>
                        </p>
                        <p>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:</p>
                        <p><br>
                        </p>
                        <p>Verifying host architecture 'linux-64'...<br>
                          Verifying target architecture 'linux-64'...<br>
                          zlib: verifying...<br>
                          Qt: verifying...<br>
                          Python: verifying...<br>
                          SIP: verifying...<br>
                          PyQt: verifying...<br>
                          PyQt3D: verifying...<br>
                          PyQtChart: verifying...<br>
                          PyQtDataVisualization: verifying...<br>
                          PyQtNetworkAuth: verifying...<br>
                          PyQtPurchasing: verifying...<br>
                          QScintilla: verifying...<br>
                          zlib: installing component...<br>
                          Qt: installing component...<br>
                          Qt: downloading
                          'qt-everywhere-src-5.15.2.tar.xz' from <a href="https://download.qt.io/archive/qt/5.15/5.15.2/single/">https://download.qt.io/archive/qt/5.15/5.15.2/single/</a>...<br>
                          pyqtdeploy-sysroot: execution of './configure'
                          failed: returned exit code 2</p>
                        <p><br>
                        </p>
                        <p>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.</p>
                        <p><br>
                        </p>
                        <p>I have attached the content of running
                          build-demo.py with --verbose</p>
                        <p><br>
                        </p>
                        <p>Hope someone can help me. Thanks.<br>
                        </p>
                        <p><br>
                        </p>
                        <div>On 3/8/24 12:18, umbertofilippo wrote:<br>
                        </div>
                        <blockquote>
                          <p>Hi and many thanks for you feedback!</p>
                          <p><br>
                          </p>
                          <p>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.</p>
                          <p><br>
                          </p>
                          <p>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...<br>
                          </p>
                          <p><br>
                          </p>
                          <p>/*<br>
                             * SECTION 4: BACKWARD COMPATIBILITY<br>
                             */<br>
                            <br>
                            # define OPENSSL_VERSION_TEXT "OpenSSL 3.0.2
                            15 Mar 2022"<br>
                            <br>
                            /* Synthesize OPENSSL_VERSION_NUMBER with
                            the layout 0xMNN00PPSL */<br>
                            # ifdef OPENSSL_VERSION_PRE_RELEASE<br>
                            #  define _OPENSSL_VERSION_PRE_RELEASE 0x0L<br>
                            # else<br>
                            #  define _OPENSSL_VERSION_PRE_RELEASE 0xfL<br>
                            # endif<br>
                            # define OPENSSL_VERSION_NUMBER          \<br>
                                (
                            (OPENSSL_VERSION_MAJOR<<28)        \<br>
                                 
                            |(OPENSSL_VERSION_MINOR<<20)       \<br>
                                 
                            |(OPENSSL_VERSION_PATCH<<4)        \<br>
                                  |_OPENSSL_VERSION_PRE_RELEASE )<br>
                            <br>
                            # ifdef  __cplusplus<br>
                            }<br>
                            # endif<br>
                            <br>
                            # include <openssl/macros.h><br>
                            # ifndef OPENSSL_NO_DEPRECATED_3_0<br>
                            #  define HEADER_OPENSSLV_H<br>
                            # endif<br>
                            <br>
                            #endif     <br>
                          </p>
                          <p><br>
                          </p>
                          <p>Umberto<br>
                          </p>
                          <p><br>
                          </p>
                          <div>On 3/7/24 19:11, Kaiser Chief wrote:<br>
                          </div>
                          <blockquote>
                            <div dir="ltr">
                              <div>Hi, <br>
                                <br>
                              </div>
                              <div>To complement my previous message
                                (and after doing a quick search through
                                the source code):</div>
                              <div>* The script "OpenSSL.py" is looking
                                for "OPENSSL_VERSION_NUMBER" in
                                "/usr/include/openssl/opensslv.h"</div>
                              <div>* 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".<br>
                                <br>
                              </div>
                              <div>Can you check that you have that line
                                in your header file too?</div>
                              <div><br>
                              </div>
                              <div>If not, it's probably that OpenSSL
                                updated their header files and put the
                                VERSION_NUMBER somewhere else...</div>
                              <div><br>
                              </div>
                              <div>If you want to run the demo, I would
                                recommend you install the default
                                versions as written in the
                                `sysroot.toml`</div>
                              <div><br>
                              </div>
                              <div>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...<br>
                              </div>
                              <div><br>
                              </div>
                              <div>Best regards,</div>
                              <div><br>
                              </div>
                              <div>KC<br>
                              </div>
                            </div>
                            <br>
                            <div class="elided-text">
                              <div dir="ltr">Le jeu.
                                7 mars 2024 à 17:56, Kaiser Chief <<a href="mailto:kaiser.chiefmail@gmail.com">kaiser.chiefmail@gmail.com</a>>
                                a écrit :<br>
                              </div>
                              <blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">
                                <div dir="ltr">
                                  <div>Hi,</div>
                                  <div><br>
                                  </div>
                                  <div>According to the sysroot help
                                    page (<a href="https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/sysroot.html#openssl">https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/sysroot.html#openssl</a>),
                                    if you have configured your
                                    `sysroot.toml` like this:<br>
                                    ```</div>
                                  <div>
                                    <pre>[OpenSSL.linux]
version = ""
install_from_source = false</pre>
                                    ```</div>
                                  <div><br>
                                  </div>
                                  <div>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).</div>
                                  <div>Now, that's what is provided in
                                    the demo folder for
                                    `pyqtdeploy-3.3.0`, so that's odd.</div>
                                  <div><br>
                                  </div>
                                  <div>Therefore, it could be that the
                                    `pyqtdeploy-sysroot` functionality
                                    is struggling to extract the version
                                    number from your OS-installed
                                    OpenSSL.</div>
                                  <div><br>
                                  </div>
                                  <div>---<br>
                                  </div>
                                  <div><br>
                                  </div>
                                  <div>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: <br>
                                    <br>
                                    <a href="https://github.com/achille-martin/pyqt-crom">https://github.com/achille-martin/pyqt-crom</a>
                                    <br>
                                    <br>
                                  </div>
                                  <div>This repo aims at demonstrating
                                    how beginner devs, intermediate devs
                                    and expert devs can benefit from
                                    pyqtdeploy.<br>
                                  </div>
                                  <div>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).</div>
                                  <div><br>
                                  </div>
                                  <div>I can support you with your
                                    initial journey on discovering
                                    pyqtdeploy through my repo if you
                                    wish.<br>
                                  </div>
                                  <div><br>
                                  </div>
                                  <div>Best regards,</div>
                                  <div><br>
                                  </div>
                                  <div>KC</div>
                                </div>
                                <br>
                                <div class="elided-text">
                                  <div dir="ltr">Le jeu.
                                    7 mars 2024 à 17:06, umbertofilippo
                                    <<a href="mailto:umbertofilippo@tiscali.it">umbertofilippo@tiscali.it</a>>
                                    a écrit :<br>
                                  </div>
                                  <blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb( 204 , 204 , 204 );padding-left:1ex">Hello
                                    everyone, first time here for me :)<br>
                                    <br>
                                    <br>
                                    I was giving pyqtdeploy a try and I
                                    am stuck at the very first step of <br>
                                    the "Building the Demo" page.<br>
                                    <br>
                                    <br>
                                    I am on a Linux-64 machine. I am
                                    following the tutorial at <br>
                                    <a href="https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/demo.html">https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/demo.html</a>
                                    and <br>
                                    I have downloaded the demo files
                                    from <br>
                                    <a href="https://files.pythonhosted.org/packages/44/d4/978017382f0ecc48601944c3fc0f58a5c5075a1d3acd48d09c11ee471b05/pyqtdeploy-3.3.0.tar.gz">https://files.pythonhosted.org/packages/44/d4/978017382f0ecc48601944c3fc0f58a5c5075a1d3acd48d09c11ee471b05/pyqtdeploy-3.3.0.tar.gz</a><br>
                                    <br>
                                    <br>
                                    I have created a virtual python
                                    environment with the following
                                    packages <br>
                                    and versions installed:<br>
                                    <br>
                                    Name,Version<br>
                                    _libgcc_mutex,0.1<br>
                                    _openmp_mutex,4.5<br>
                                    bzip2,1.0.8<br>
                                    ca-certificates,2024.2.2<br>
                                    ld_impl_linux-64,2.40<br>
                                    libexpat,2.6.1<br>
                                    libffi,3.4.2<br>
                                    libgcc-ng,13.2.0<br>
                                    libgomp,13.2.0<br>
                                    libnsl,2.0.1<br>
                                    libsqlite,3.45.1<br>
                                    libuuid,2.38.1<br>
                                    libxcrypt,4.4.36<br>
                                    libzlib,1.2.13<br>
                                    ncurses,6.4<br>
                                    openssl,3.2.1<br>
                                    pip,24.0<br>
                                    pyqt5,5.15.10<br>
                                    pyqt5-qt5,5.15.2<br>
                                    pyqt5-sip,12.13.0<br>
                                    pyqtdeploy,3.3.0<br>
                                    python,3.12.2<br>
                                    readline,8.2<br>
                                    setuptools,69.1.1<br>
                                    tk,8.6.13<br>
                                    toml,0.10.2<br>
                                    tzdata,2024a<br>
                                    wheel,0.42.0<br>
                                    xz,5.2.6<br>
                                    <br>
                                    I have tried to run the command
                                    "python build-demo.py" straight
                                    away, <br>
                                    but I am getting the following
                                    error:<br>
                                    <br>
                                    OpenSSL: verifying...<br>
                                    OpenSSL: determining installed
                                    version from <br>
                                    '/usr/include/openssl/opensslv.h'.<br>
                                    pyqtdeploy-sysroot: OpenSSL: unable
                                    to extract the version number.<br>
                                    <br>
                                    <br>
                                    OpenSSL is installed on my machine
                                    and the result of doing "openssl <br>
                                    version" is "OpenSSL 3.2.1 30 Jan
                                    2024 (Library: OpenSSL 3.2.1 30 Jan
                                    2024)"<br>
                                    <br>
                                    <br>
                                    Am I supposed to install the exact
                                    versions of all the components found
                                    <br>
                                    in the ""sysroot.toml" file to be
                                    able to run "python build-demo.py" <br>
                                    successfully?<br>
                                    <br>
                                    <br>
                                    Thanks,<br>
                                    <br>
                                    <br>
                                    Umberto<br>
                                    <br>
                                  </blockquote>
                                </div>
                              </blockquote>
                            </div>
                          </blockquote>
                        </blockquote>
                      </div>
                    </blockquote>
                  </div>
                </blockquote>
              </div>
            </blockquote>
          </div>
        </blockquote>
      </div>
    </blockquote>
  </div>

</blockquote></div>
</blockquote></div><br></div></div></div>