[pyqtdeploy] Failing at building the demo

Phil Thompson phil at riverbankcomputing.com
Sun Apr 21 17:49:48 BST 2024


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