[pyqtdeploy] Failing at building the demo

umbertofilippo umbertofilippo at tiscali.it
Sun Apr 21 17:35:43 BST 2024


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
>>>>>
>>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20240421/4f49edfd/attachment-0001.htm>


More information about the PyQt mailing list