[pyqtdeploy] Failing at building the demo

umbertofilippo umbertofilippo at tiscali.it
Sun Apr 21 17:53:16 BST 2024


Thanks Charles and thanks Phil for clarifying,


I am moving on, but having another issue now.

The symlink is now fine and I have the file I accidentally removed 
earlier ("libQt5Multimedia.so").

Now when I try to build with make I get:

```

/usr/bin/ld: 
/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/libQtMultimedia.so: 
undefined reference to `operator delete[](void*, unsigned long)@Qt_5'
collect2: error: ld returned 1 exit status
make: *** [Makefile:210: memory] Error 1

```

Sorry for spamming, I hope I can keep posting my tries without 
disturbing too much.


Umberto


On 4/21/24 18:49, Phil Thompson wrote:
> QtMultimedia.abi3.so is the Python extension module that implements 
> the bindings to the QtMultimedia C++ library.
>
> libQt5Multimedia.so is the QtMultimedia C++ library itself.
>
> Phil
>
> On 21/04/2024 17:40, umbertofilippo wrote:
>> Sorry for messing things up.
>>
>> I noticed the right command for the symlink was `sudo ln -s
>> /home/umberto/miniforge3/envs/memory/lib/python3.12/site-packages/PyQt5/QtMultimedia.abi3.so 
>>
>> /usr/lib/x86_64-linux-gnu/libQtMultimedia.so` (not
>> "libQt5Multimedia.so", removed the "5").
>>
>> Trying to rebuild again with this I got:
>>
>> ```
>>
>> /usr/bin/ld: cannot find
>> /usr/lib/x86_64-linux-gnu/libQt5Multimedia.so: No such file or
>> directory
>> collect2: error: ld returned 1 exit status
>> make: *** [Makefile:210: memory] Error 1
>>
>> ```
>>
>> Sorry for the confusion.
>>
>> Umberto
>>
>> On 4/21/24 18:35, umbertofilippo wrote:
>>>
>>> Hello again,
>>>
>>>
>>> I gave it a try.
>>>
>>> I found the QtMultimedia.abi.so file in the folder 
>>> /home/umberto/miniforge3/envs/memory/lib/python3.1/site-packages/PyQt5 
>>> (I am using a virtual Python environment created with mamba, similar 
>>> to conda).
>>>
>>> I created the symlink with `sudo ln -s 
>>> /home/umberto/miniforge3/envs/memory/lib/python3.12/site-packages/PyQt5/QtMultimedia.abi3.so 
>>> /usr/lib/x86_64-linux-gnu/libQt5Multimedia.so`. After this, I 
>>> checked that /usr/lib/x86_64-linux-gnu/libQt5Multimedia.so points to 
>>> /home/umberto/miniforge3/envs/memory/lib/python3.12/site-packages/PyQt5/QtMultimedia.abi3.so 
>>> by following the symlink and everything seems fine so far.
>>>
>>> I then tried to re-build with `pyqtdeploy-build memory.pdt`, then cs 
>>> to build- directory, `qmake` and `make`.
>>>
>>> I came back to the error I had before this:
>>>
>>> ```
>>>
>>> /usr/bin/ld: cannot find -lQtMultimedia: No such file or directory
>>> collect2: error: ld returned 1 exit status
>>> make: *** [Makefile:210: memory] Error 1
>>>
>>> ```
>>>
>>> I sincerely don't know at this point what I am supposed to do, and I 
>>> did not think it wold be this complicated.
>>>
>>> Is it because I am using a virtual environment maybe?
>>>
>>>
>>> Thanks,
>>>
>>> Umberto
>>>
>>>
>>> On 4/21/24 12:31, Charles wrote:
>>>> That means instead of QtMultimedia.so from Qt, it wants to link 
>>>> with QtMultimedia.abi3.so <http://QtMultimedia.abi3.so> from PyQt5 
>>>> package instead, so you should find where that file is located then 
>>>> create symlink from QtMultimedia.so to it.
>>>>
>>>> On Sun, Apr 21, 2024 at 5:16 PM umbertofilippo 
>>>> <umbertofilippo at tiscali.it> wrote:
>>>>
>>>>     Thank you Charles,
>>>>
>>>>
>>>>     I symlinked the file, and now I am receiving yet another error:
>>>>
>>>>
>>>>     `/usr/bin/ld: pyqtdeploy_main.o:(.data.rel+0x28): undefined
>>>>     reference to `PyInit_QtMultimedia'`
>>>>
>>>>
>>>>     I am (again) a bit stuck at this point, a google search of
>>>>     "PyInit_QtMultimedia" gave no results...
>>>>
>>>>     But I am confident that slowly but steadily, error by error, I
>>>>     will be able to eventually build the application!
>>>>
>>>>     Of course, if it wasn't for the support of this mailing list, I
>>>>     would not be so optimist :)
>>>>
>>>>
>>>>     Umberto
>>>>
>>>>
>>>>     On 4/20/24 15:57, Charles wrote:
>>>>>     -lQtMultimedia means that you are linking with QtMultimedia.so.
>>>>>
>>>>>     The first thing you do is check is your /usr/lib directory
>>>>>     whether that file exists: cd /usr/lib && find | grep -i 
>>>>> qtmultimedia
>>>>>
>>>>>     Then if the file is not found, you check the list of files your
>>>>>     qtmultimedia5-dev package has. You'll see that it has
>>>>>     Qt5Multimedia.so.
>>>>>
>>>>>     So then what you need to do is just symlink it
>>>>>
>>>>>     ln
>>>>> -s /usr/lib/x86_64-linux-gnu/libQt5Multimedia.so /usr/lib/x86_64-linux-gnu/libQtMultimedia.so
>>>>>
>>>>>
>>>>>     On Sat, Apr 20, 2024 at 8:21 PM umbertofilippo
>>>>>     <umbertofilippo at tiscali.it> wrote:
>>>>>
>>>>>         Hi KC and thanks again for your suopport!
>>>>>
>>>>>
>>>>>         I have included it in my toml file, then tried to build the
>>>>>         project and I got the error: "Project ERROR: Unknown
>>>>>         module(s) in QT: multimedia linux"
>>>>>
>>>>>
>>>>>         I then googled and understood I might need to install
>>>>>         QtMultimedia on my system (Linux Mint 20).
>>>>>
>>>>>         I then did `sudo apt install qtmultimedia5-dev
>>>>>         libqt5multimedia5 libqt5multimedia5-plugins` (not sure if
>>>>>         all were necessary), and now during the make command I
>>>>>         receive a new error:
>>>>>
>>>>>
>>>>>         ```
>>>>>
>>>>>         /usr/bin/ld: cannot find -lQtMultimedia: No such file or
>>>>>         directory
>>>>>         collect2: error: ld returned 1 exit status
>>>>>         make: *** [Makefile:210: memory] Error 1
>>>>>
>>>>>         ```
>>>>>
>>>>>
>>>>>         I tried to find out how to solve the problem but after some
>>>>>         search I could figure it out.
>>>>>
>>>>>         I guess it still has to do with some missing components, but
>>>>>         I could not find the proper page with a list of all the
>>>>>         needed libraries.
>>>>>
>>>>>
>>>>>         Do you or anyone else has it?
>>>>>
>>>>>
>>>>>         Thanks again for your time, really appreciated
>>>>>
>>>>>
>>>>>         Umberto
>>>>>
>>>>>
>>>>>         On 4/20/24 11:32, Kaiser Chief wrote:
>>>>>>         Hi umbertofilippo,
>>>>>>
>>>>>>         The non-standard python packages should be added to the
>>>>>>         `sysroot.toml` first.
>>>>>>
>>>>>>         In fact, there should be a `PyQt5` block in your
>>>>>>         `sysroot.toml`. (The component plugin for PyQt5 will work
>>>>>>         there). Look at the `Pyqt5.Linux` section and add
>>>>>>         QtMultimedia to the list of modules (QtWidgets should
>>>>>>         already be there for instance).
>>>>>>
>>>>>>         Then reload your .pdt and it should automatically detect
>>>>>>         QtMultimedia which you can tick.
>>>>>>
>>>>>>         I have checked your python source code and it does not seem
>>>>>>         that you need any other dependency so you can ghead with
>>>>>>         this change and build.
>>>>>>
>>>>>>         Best regards,
>>>>>>
>>>>>>         KC
>>>>>>
>>>>>>
>>>>>>         On Fri, 19 Apr 2024, 17:16 umbertofilippo,
>>>>>>         <umbertofilippo at tiscali.it> wrote:
>>>>>>
>>>>>>             Hello everyone,
>>>>>>
>>>>>>
>>>>>>             I finally had some time to come back to this.
>>>>>>
>>>>>>             I tried to build my own application (a simple memory
>>>>>>             game, whose source you can find here:
>>>>>>             https://github.com/umbe1987/memory).
>>>>>>
>>>>>>             Host Linux-64 and target Linux-64.
>>>>>>
>>>>>>             The deployment process seemed smooth, however when I
>>>>>>             try to launch my application in the build-linux-64
>>>>>>             directory, I see this error:
>>>>>>
>>>>>>
>>>>>>             ```
>>>>>>
>>>>>>             Traceback (most recent call last):
>>>>>>               File "memory.py", line 6, in <module>
>>>>>>               File "bootstrap-3.11.0.py
>>>>>>             <http://bootstrap-3.11.0.py>", line 1178, in 
>>>>>> _find_and_load
>>>>>>               File "bootstrap-3.11.0.py
>>>>>>             <http://bootstrap-3.11.0.py>", line 1142, in
>>>>>>             _find_and_load_unlocked
>>>>>>             ModuleNotFoundError: No module named 
>>>>>> 'PyQt5.QtMultimedia'
>>>>>>
>>>>>>             ```
>>>>>>
>>>>>>             I went back to the .pdt file (`pyqtdeploy-build
>>>>>>             memory.pdt`), but in the Packages tab I cannot see
>>>>>>             QtMultimedia listed anywhere.
>>>>>>
>>>>>>             I could try to add it manually in the memory.pdt file,
>>>>>>             but I was wondering if I am doing anything wrong.
>>>>>>
>>>>>>             I am sharing the content of my pdt file below.
>>>>>>
>>>>>>             Many thanks in advance if you wish to help.
>>>>>>
>>>>>>
>>>>>>             Umberto
>>>>>>
>>>>>>
>>>>>>             memory.pdt
>>>>>>
>>>>>>             ```
>>>>>>
>>>>>>             version = 0
>>>>>>             sysroot = ""
>>>>>>             sysroots_dir = ""
>>>>>>             parts = [ "Python:random", "PyQt:PyQt5.QtWidgets",
>>>>>>             "Python:glob", "Python:os", "PyQt:PyQt5.QtCore",
>>>>>>             "PyQt:PyQt5.QtGui", "SIP:PyQt5.sip", "PyQt:PyQt5",]
>>>>>>
>>>>>>             [Application]
>>>>>>             entry_point = ""
>>>>>>             is_console = false
>>>>>>             is_bundle = false
>>>>>>             name = ""
>>>>>>             qmake_configuration = ""
>>>>>>             script = "memory.py"
>>>>>>             syspath = ""
>>>>>>
>>>>>>             [Application.Package]
>>>>>>             name = "data"
>>>>>>             exclude = [ "*.pyc", "*.pyd", "*.pyo", "*.pyx",
>>>>>>             "*.pxi", "__pycache__", "*-info", "EGG_INFO", "*.so",]
>>>>>>             [[Application.Package.Content]]
>>>>>>             name = "back.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content]]
>>>>>>             name = "img"
>>>>>>             included = true
>>>>>>             is_directory = true
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "analisiapprofondita.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "cagnaccioselvaggio.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "diamanteocchidileone.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "lameraviglia.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "leggedelpiuforte.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "lucertolacrogiolante.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "ricercaossessiva.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "ruggitodelwurm.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "studioaccurato.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "Tropicalisland.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "wurmarrogante.jpg"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>
>>>>>>             [[Application.Package.Content]]
>>>>>>             name = "sound"
>>>>>>             included = true
>>>>>>             is_directory = true
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "end.wav"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "fail.wav"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             [[Application.Package.Content.Content]]
>>>>>>             name = "success.wav"
>>>>>>             included = true
>>>>>>             is_directory = false
>>>>>>
>>>>>>             ```
>>>>>>
>>>>>>             On 3/12/24 08:48, umbertofilippo wrote:
>>>>>>>
>>>>>>>             Thanks Charles and KC!
>>>>>>>
>>>>>>>
>>>>>>>             I was finally able to build the demo after installing
>>>>>>>             all the Qt for X11 requirements for Linux!!!
>>>>>>>
>>>>>>>
>>>>>>>             For the records, here is what I had to install on my
>>>>>>>             machine (Linux Mint 21):
>>>>>>>
>>>>>>>             Note: there is a package in the list of requirements
>>>>>>>             which has a missing match on my system, I am marking
>>>>>>>             it down below:
>>>>>>>
>>>>>>>
>>>>>>>             sudo apt-get install libxcb-util-dev
>>>>>>>             sudo apt-get install libfontconfig1-dev
>>>>>>>             libfreetype6-dev libx11-dev libx11-xcb-dev libxext-dev
>>>>>>>             libxfixes-dev libxi-dev libxrender-dev libxcb1-dev
>>>>>>>             libxcb-glx0-dev libxcb-keysyms1-dev libxcb-image0-dev
>>>>>>>             libxcb-shm0-dev libxcb-icccm4-dev libxcb-sync0-dev
>>>>>>>             libxcb-xfixes0-dev libxcb-shape0-dev libxcb-randr0-dev
>>>>>>>             libxcb-render-util0-dev libxkbcommon-dev
>>>>>>>             libxkbcommon-x11-dev libxcb-xinerama0-dev # instead of
>>>>>>>             "libxcd-xinerama-dev"
>>>>>>>
>>>>>>>
>>>>>>>             Now, on my application and then Android! ;)
>>>>>>>
>>>>>>>
>>>>>>>             On 3/9/24 20:47, Umberto Minora wrote:
>>>>>>>>             Thanks for the hint Charles, I will try to test the
>>>>>>>>             solution as soon as I can and report back on the 
>>>>>>>> result.
>>>>>>>>
>>>>>>>>             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
>>>>>>>> <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.
>>>>>>>>
>>>>>>>>             Will be back soon.
>>>>>>>>
>>>>>>>>             Umberto
>>>>>>>>
>>>>>>>>             Il 9 mar 2024 15:48, Charles <peacech at gmail.com>
>>>>>>>>             <mailto:peacech at gmail.com> ha scritto:
>>>>>>>>
>>>>>>>>                 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
>>>>>>>>
>>>>>>>>


More information about the PyQt mailing list