[prev in list] [next in list] [prev in thread] [next in thread]
List: pykde
Subject: Re: [pyqtdeploy] Failing at building the demo
From: Charles <peacech () gmail ! com>
Date: 2024-04-21 16:46:00
Message-ID: CABthHP-1iaNspJ8J_3ZymUTP+0VsSd8RkBsevQ1FYGrjsiPDxA () mail ! gmail ! com
[Download RAW message or body]
/usr/bin/ld: cannot find /usr/lib/x86_64-linux-gnu/libQt5Multimedia.so: No
such file or directory
Probably deleted by your commands earlier, just reinstall
libqt5multimedia-dev.
On Sun, Apr 21, 2024 at 11:40 PM umbertofilippo <umbertofilippo@tiscali.it>
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 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@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@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@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", line 1178, in _find_and_load
> > > > File "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
> > > > and run "build-demo.py" again.
> > > >
> > > > Will be back soon.
> > > >
> > > > Umberto
> > > >
> > > > Il 9 mar 2024 15:48, Charles <peacech@gmail.com> <peacech@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@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@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@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@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@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@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
> > > >
> > > >
> > > >
[Attachment #3 (text/html)]
<div dir="ltr"><blockquote class="gmail_default gmail_quote" style="margin:0px 0px \
0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
/usr/bin/ld: cannot find
/usr/lib/x86_64-linux-gnu/libQt5Multimedia.so: No such file or
directory</blockquote><div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div \
class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"> \
Probably deleted by your commands earlier, just reinstall \
libqt5multimedia-dev.</div></div><br><div class="gmail_quote"><div dir="ltr" \
class="gmail_attr">On Sun, Apr 21, 2024 at 11:40 PM umbertofilippo <<a \
href="mailto:umbertofilippo@tiscali.it">umbertofilippo@tiscali.it</a>> \
wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><u></u>
<div>
<p>Sorry for messing things up.</p>
<p>I noticed the right command for the symlink was `sudo ln -s
/home/umberto/miniforge3/envs/memory/lib/python3.12/site-packages/PyQt5/<a \
href="http://QtMultimedia.abi3.so" \
target="_blank">QtMultimedia.abi3.so</a>
/usr/lib/x86_64-linux-gnu/libQtMultimedia.so` (not \
"libQt5Multimedia.so", removed the "5").</p>
<p>Trying to rebuild again with this I got:</p>
<p>```</p>
<p>/usr/bin/ld: cannot find
/usr/lib/x86_64-linux-gnu/libQt5Multimedia.so: No such file or
directory<br>
collect2: error: ld returned 1 exit status<br>
make: *** [Makefile:210: memory] Error 1<br>
</p>
<p>```</p>
<p>Sorry for the confusion.</p>
<p>Umberto<br>
</p>
<div>On 4/21/24 18:35, umbertofilippo wrote:<br>
</div>
<blockquote type="cite">
<p>Hello again,</p>
<p><br>
</p>
<p>I gave it a try.<br>
</p>
<p>I found the <a href="http://QtMultimedia.abi.so" \
target="_blank">QtMultimedia.abi.so</a> 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).</p>
<p>I created the symlink with `sudo ln -s
/home/umberto/miniforge3/envs/memory/lib/python3.12/site-packages/PyQt5/<a \
href="http://QtMultimedia.abi3.so" target="_blank">QtMultimedia.abi3.so</a> \
/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/<a \
href="http://QtMultimedia.abi3.so" target="_blank">QtMultimedia.abi3.so</a> by \
following the symlink and everything seems fine so far.</p> <p>I then tried to \
re-build with `pyqtdeploy-build memory.pdt`, then cs to build- directory, `qmake` \
and `make`.</p> <p>I came back to the error I had before this:</p>
<p>```</p>
<p>/usr/bin/ld: cannot find -lQtMultimedia: No such file or
directory<br>
collect2: error: ld returned 1 exit status<br>
make: *** [Makefile:210: memory] Error 1<br>
</p>
<p> ```</p>
<p>I sincerely don't know at this point what I am supposed to do,
and I did not think it wold be this complicated.</p>
<p>Is it because I am using a virtual environment maybe?</p>
<p><br>
</p>
<p>Thanks,</p>
<p>Umberto<br>
</p>
<p><br>
</p>
<div>On 4/21/24 12:31, Charles wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small">That means instead of \
QtMultimedia.so from Qt, it wants to link
with <a href="http://QtMultimedia.abi3.so" \
target="_blank">QtMultimedia.abi3.so</a> from PyQt5 package instead, so you should \
find where that file is located then create symlink from QtMultimedia.so to it.<br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sun, Apr 21, 2024 at
5:16 PM umbertofilippo <<a href="mailto:umbertofilippo@tiscali.it" \
target="_blank">umbertofilippo@tiscali.it</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <div>
<p>Thank you Charles,</p>
<p><br>
</p>
<p>I symlinked the file, and now I am receiving yet
another error:</p>
<p><br>
</p>
<p>`/usr/bin/ld: pyqtdeploy_main.o:(.data.rel+0x28):
undefined reference to `PyInit_QtMultimedia'`</p>
<p><br>
</p>
<p>I am (again) a bit stuck at this point, a google search
of "PyInit_QtMultimedia" gave no results...</p>
<p>But I am confident that slowly but steadily, error by
error, I will be able to eventually build the
application!</p>
<p>Of course, if it wasn't for the support of this mailing
list, I would not be so optimist :)<br>
</p>
<p><br>
</p>
<p>Umberto<br>
</p>
<p><br>
</p>
<div>On 4/20/24 15:57, Charles wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small">
-lQtMultimedia means that you are linking with
QtMultimedia.so.</div>
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small"><br> </div>
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small">The first thing you \
do is check is your /usr/lib directory whether that file exists: cd /usr/lib \
&& find | grep -i qtmultimedia<br>
</div>
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small"><br> </div>
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small">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.</div>
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small"><br> </div>
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small">So then what you need \
to do is just symlink it</div>
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small"><br> </div>
<div class="gmail_default" \
style="font-family:arial,helvetica,sans-serif;font-size:small">ln
-s /usr/lib/x86_64-linux-gnu/libQt5Multimedia.so \
/usr/lib/x86_64-linux-gnu/libQtMultimedia.so </div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sat, Apr 20, 2024
at 8:21 PM umbertofilippo <<a \
href="mailto:umbertofilippo@tiscali.it" \
target="_blank">umbertofilippo@tiscali.it</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <div>
<p>Hi KC and thanks again for your suopport!</p>
<p><br>
</p>
<p>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"</p>
<p><br>
</p>
<p>I then googled and understood I might need to
install QtMultimedia on my system (Linux Mint
20).</p>
<p>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:</p>
<p><br>
</p>
<p>```</p>
<p>/usr/bin/ld: cannot find -lQtMultimedia: No
such file or directory<br>
collect2: error: ld returned 1 exit status<br>
make: *** [Makefile:210: memory] Error 1<br>
</p>
<p>```<br>
</p>
<p><br>
</p>
<p>I tried to find out how to solve the problem
but after some search I could figure it out.</p>
<p>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.<br>
</p>
<p><br>
</p>
<p>Do you or anyone else has it?<br>
</p>
<p><br>
</p>
<p>Thanks again for your time, really appreciated<br>
</p>
<p><br>
</p>
<p>Umberto<br>
</p>
<p><br>
</p>
<div>On 4/20/24 11:32, Kaiser Chief wrote:<br>
</div>
<blockquote type="cite">
<div dir="auto">
<div>Hi umbertofilippo,</div>
<div dir="auto"><br>
</div>
<div dir="auto">The non-standard python
packages should be added to the
`sysroot.toml` first.</div>
<div dir="auto"><br>
</div>
<div dir="auto">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). </div>
<div dir="auto"><br>
</div>
<div dir="auto">Then reload your .pdt and it
should automatically detect QtMultimedia
which you can tick. </div>
<div dir="auto"><br>
</div>
<div dir="auto">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. </div>
<div dir="auto"><br>
</div>
<div dir="auto">Best regards, </div>
<div dir="auto"><br>
</div>
<div dir="auto">KC</div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
<div class="gmail_quote" dir="auto">
<div dir="ltr" class="gmail_attr">On Fri,
19 Apr 2024, 17:16 umbertofilippo, <<a \
href="mailto:umbertofilippo@tiscali.it" \
target="_blank">umbertofilippo@tiscali.it</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px \
0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <div>
<p>Hello everyone,</p>
<p><br>
</p>
<p>I finally had some time to come
back to this.</p>
<p>I tried to build my own application
(a simple memory game, whose source
you can find here: <a \
href="https://github.com/umbe1987/memory" rel="noreferrer" \
target="_blank">https://github.com/umbe1987/memory</a>).</p>
<p>Host Linux-64 and target Linux-64.<br>
</p>
<p>The deployment process seemed
smooth, however when I try to launch
my application in the build-linux-64
directory, I see this error:<br>
</p>
<p><br>
</p>
<p>```<br>
</p>
<p>Traceback (most recent call last):<br>
File "memory.py", line 6, in
<module><br>
File "<a \
href="http://bootstrap-3.11.0.py" rel="noreferrer" \
target="_blank">bootstrap-3.11.0.py</a>", line 1178, in _find_and_load<br>
File "<a \
href="http://bootstrap-3.11.0.py" rel="noreferrer" \
target="_blank">bootstrap-3.11.0.py</a>", line 1142, in
_find_and_load_unlocked<br>
ModuleNotFoundError: No module named
'PyQt5.QtMultimedia'<br>
</p>
<p>```</p>
<p>I went back to the .pdt file
(`pyqtdeploy-build memory.pdt`), but
in the Packages tab I cannot see
QtMultimedia listed anywhere.</p>
<p>I could try to add it manually in
the memory.pdt file, but I was
wondering if I am doing anything
wrong.</p>
<p>I am sharing the content of my pdt
file below.<br>
</p>
<p>Many thanks in advance if you wish
to help.</p>
<p><br>
</p>
<p>Umberto</p>
<p><br>
</p>
<p>memory.pdt</p>
<p>```</p>
<p>version = 0<br>
sysroot = ""<br>
sysroots_dir = ""<br>
parts = [ "Python:random",
"PyQt:PyQt5.QtWidgets",
"Python:glob", "Python:os",
"PyQt:PyQt5.QtCore",
"PyQt:PyQt5.QtGui", \
"SIP:PyQt5.sip", "PyQt:PyQt5",]<br>
<br>
[Application]<br>
entry_point = ""<br>
is_console = false<br>
is_bundle = false<br>
name = ""<br>
qmake_configuration = ""<br>
script = "memory.py"<br>
syspath = ""<br>
<br>
[Application.Package]<br>
name = "data"<br>
exclude = [ "*.pyc", "*.pyd",
"*.pyo", "*.pyx", \
"*.pxi",
"__pycache__", "*-info", \
"EGG_INFO", "*.so",]<br>
[[Application.Package.Content]]<br>
name = "back.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content]]<br>
name = "img"<br>
included = true<br>
is_directory = true<br>
[[Application.Package.Content.Content]]<br>
name = "analisiapprofondita.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "cagnaccioselvaggio.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "diamanteocchidileone.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "lameraviglia.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "leggedelpiuforte.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "lucertolacrogiolante.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "ricercaossessiva.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "ruggitodelwurm.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "studioaccurato.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "Tropicalisland.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "wurmarrogante.jpg"<br>
included = true<br>
is_directory = false<br>
<br>
<br>
[[Application.Package.Content]]<br>
name = "sound"<br>
included = true<br>
is_directory = true<br>
[[Application.Package.Content.Content]]<br>
name = "end.wav"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "fail.wav"<br>
included = true<br>
is_directory = false<br>
<br>
[[Application.Package.Content.Content]]<br>
name = "success.wav"<br>
included = true<br>
is_directory = false<br>
<br>
</p>
<p>```<br>
</p>
<div>On 3/12/24 08:48, umbertofilippo
wrote:<br>
</div>
<blockquote type="cite">
<p>Thanks Charles and KC!</p>
<p><br>
</p>
<p>I was finally able to build the
demo after installing all the Qt
for X11 requirements for Linux!!!</p>
<p><br>
</p>
<p>For the records, here is what I
had to install on my machine
(Linux Mint 21):</p>
<p>Note: there is a package in the
list of requirements which has a
missing match on my system, I am
marking it down below:</p>
<p><br>
</p>
<p>sudo apt-get install
libxcb-util-dev<br>
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"</p>
<p><br>
</p>
<p>Now, on my application and then
Android! ;)<br>
</p>
<p><br>
</p>
<div>On 3/9/24 20:47, Umberto Minora
wrote:<br>
</div>
<blockquote type="cite">
<div dir="auto">
<div>Thanks for the hint
Charles, I will try to test
the solution as soon as I can
and report back on the result.</div>
<div dir="auto"><br>
</div>
<div dir="auto">As far as I
understand, I should do "sudo
apt-get install
libxcb-util-dev" as explained
in <a \
href="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" \
rel="noreferrer" target="_blank">https://forum.qt.io/topic/125582/qt-5-15-2-do-not-bui \
ld-libqxcb-so-but-at-the-same-time-qt-5-14-0-successfully-build-libqxcb-so/4?_=1710013170647&lang=it</a>
and run "build-demo.py" \
again.</div> <div dir="auto"><br>
</div>
<div dir="auto">Will be back
soon.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Umberto</div>
<div dir="auto">
<div class="gmail_extra" dir="auto"><br>
<div class="gmail_quote">Il
9 mar 2024 15:48, Charles
<a href="mailto:peacech@gmail.com" \
rel="noreferrer" target="_blank"><peacech@gmail.com></a>
ha scritto:<br type="attribution">
<blockquote style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <div dir="ltr">
<div \
style="font-family:"arial","helvetica",sans-serif;font-size:small">Do
you have libxcb.so
platform plugin in
your qt directory?</div>
<div \
style="font-family:"arial","helvetica",sans-serif;font-size:small"><br>
</div>
<div \
style="font-family:"arial","helvetica",sans-serif;font-size:small">If
not you need to
rebuild qt again,
make sure that
requirements listed
at <a \
href="https://doc.qt.io/qt-5/linux-requirements.html" rel="noreferrer" \
target="_blank">https://doc.qt.io/qt-5/linux-requirements.html</a> are installed and
make sure the xcb
platform plugin is
built.<br>
</div>
</div>
<br>
<div>
<div dir="ltr">On Sat,
Mar 9, 2024 at
8:38 PM
umbertofilippo <<a \
href="mailto:umbertofilippo@tiscali.it" rel="noreferrer" \
target="_blank">umbertofilippo@tiscali.it</a>> wrote:<br>
</div>
<blockquote style="margin:0px 0px \
0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <div>
<p>Hello everyone,</p>
<p><br>
</p>
<p>just a quick
update: I did
the KC's three
lines trick and
it did the job.</p>
<p>I am now stuck
at yet another
error, which is<br>
<br>
Generating the
Makefiles...<br>
/home/umberto/games/python/pyqt-demo/sysroot-linux-64/Qt/bin/qmake
-recursive
PyQt5.pro<br>
sip-install:
\
'/home/umberto/games/python/pyqt-demo/sysroot-linux-64/Qt/bin/qmake
-recursive
PyQt5.pro'
failed returning
3<br>
Info: creating
stash file
/tmp/tmphwkq3ix1/.qmake.stash<br>
Reading
\
/tmp/tmphwkq3ix1/QtCore/QtCore.pro<br> Reading
\
/tmp/tmphwkq3ix1/QtNetwork/QtNetwork.pro<br> Reading
\
/tmp/tmphwkq3ix1/QtGui/QtGui.pro<br> Reading
\
/tmp/tmphwkq3ix1/QtWidgets/QtWidgets.pro<br> Reading
\
/tmp/tmphwkq3ix1/QtX11Extras/QtX11Extras.pro<br> Project ERROR:
Unknown
module(s) in QT:
x11extras<br>
pyqtdeploy-sysroot: execution of 'sip-install' failed: returned exit
code 1</p>
<p><br>
</p>
<p>I am attaching
the whole log
again in case
it's useful to
better
understand what
went wrong.</p>
<p><br>
</p>
<p>Any idea how to
move on from
here?<br>
</p>
<p><br>
</p>
<p>Sorry for
spamming but I
hope this thread
not only will
fix my issues
but also will
serve as a
reference for
building with a
Linux machine
(or me and for
others
hopefully).</p>
<p><br>
</p>
<p>Umberto</p>
<p><br>
</p>
<div>On 3/8/24
20:32, Kaiser
Chief wrote:<br>
</div>
<blockquote>
<div dir="ltr">
<div>Hi,</div>
<div><br>
</div>
<div>
\
"qt-everywhere-opensource-src-5.15.10.tar.xz" is the right
file you are
looking for.</div>
<div><br>
</div>
<div>Unfortunately,
"pyqtdeploy/sysroot/plugins/Qt.py" is looking for
\
'qt-everywhere-src-{}.tar.xz'</div> <div><br>
</div>
<div>You could
fix that line
(#53) in
\
"pyqtdeploy/sysroot/plugins/Qt.py"with:</div> <div>`
\
qt-everywhere-opensource-src-{}.tar.xz `</div>
<div><br>
</div>
<div>However,
you might
encounter
problems down
the line
probably...</div>
<div><br>
</div>
<div>I would
recommend to
stick with
Qt5.15.2 and
do necessary
changes.<br>
</div>
<div>Alternatively,
you could
built
\
qt-everywhere-opensource-src-5.15.10.tar.xz from source
manually and
tell
pyqtdeploy
where to look
for Qt install
(but that's a
bit more
painful).</div>
<div><br>
</div>
<div><br>
</div>
<div>Best
regards,</div>
<div><br>
</div>
<div>KC<br>
</div>
</div>
<br>
<div>
<div dir="ltr">Le ven.
8 mars 2024
à 19:21,
umbertofilippo
<<a \
href="mailto:umbertofilippo@tiscali.it" rel="noreferrer" \
target="_blank">umbertofilippo@tiscali.it</a>> a écrit :<br>
</div>
<blockquote \
style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> <div>
<p>Thanks
again for the
feedback,</p>
<p><br>
</p>
<p>I have just
tried to
update the
sysroot.toml
like this:</p>
<p><br>
</p>
<p># Qt
##########################################################################<br>
<br>
[Qt]<br>
version =
"5.15.10" #
original was
"5.15.2"<br>
edition =
"opensource"<br>
</p>
<p>and now it
seems the link
to download
the qt source
can no longer
be found.</p>
<p><br>
</p>
<p>Qt:
installing
component...<br>
Qt: looking
for
\
'qt-everywhere-src-5.15.10.tar.xz' in
\
/home/umberto/games/python/pyqt-demo.<br> Qt:
downloading
\
'qt-everywhere-src-5.15.10.tar.xz' from <a \
href="https://download.qt.io/archive/qt/5.15/5.15.10/single/" rel="noreferrer" \
target="_blank">https://download.qt.io/archive/qt/5.15/5.15.10/single/</a>...<br> \
Qt: '<a href="https://download.qt.io/archive/qt/5.15/5.15.10/single/qt-everywhere-src-5.15.10.tar.xz" \
rel="noreferrer" target="_blank">https://download.qt.io/archive/qt/5.15/5.15.10/single/qt-everywhere-src-5.15.10.tar.xz</a>'
was not found.<br>
pyqtdeploy-sysroot: Qt: unable to find
'/home/umberto/.pyqtdeploy/cache/qt-everywhere-src-5.15.10.tar.xz'.</p>
<p><br>
</p>
<p>The only
similar thing
I can see in <a \
href="https://download.qt.io/archive/qt/5.15/5.15.10/single/" rel="noreferrer" \
target="_blank">https://download.qt.io/archive/qt/5.15/5.15.10/single/</a> is
\
"qt-everywhere-opensource-src-5.15.10.tar.xz"</p> <p><br>
</p>
<p>If there is
no easy way to
solve this you
can think of I
will probably
try to test
adding those 3
lines to
\
qtbase/src/corelib/global/qglobal.h</p> <p><br>
</p>
<p>Thanks
again so much
for your kind
and feedback,
much
appreciated!<br>
</p>
<p><br>
</p>
<p>Umberto<br>
</p>
<p><br>
</p>
<div>On 3/8/24
19:38, Kaiser
Chief wrote:<br>
</div>
<blockquote>
<div dir="ltr">
<div>To
complement
Charles'
answer, it
seems like
someone found
a quick fix
with GCC11, in
case you are
reluctant to
move back to
GCC10: <a \
href="https://forum.qt.io/topic/136672/error-installing-qt-everywhere-src-5-15-2-on-ubuntu-22-04/2" \
rel="noreferrer" target="_blank">https://forum.qt.io/topic/136672/error-installing-qt-everywhere-src-5-15-2-on-ubuntu-22-04/2</a>
<br>
</div>
<div><br>
</div>
<div> add
these 3 lines
at the top of
qtbase/src/corelib/global/qglobal.h : (I haven't tested that)<br>
</div>
<div>```</div>
<div>#ifdef
__cplusplus<br>
#include
<limits><br>
#endif</div>
<div>```</div>
<div><br>
</div>
<div>For ref,
the QT bug
associated is:
<a \
href="https://bugreports.qt.io/browse/QTBUG-90395" rel="noreferrer" \
target="_blank">https://bugreports.qt.io/browse/QTBUG-90395</a></div> <div>It has
been fixed for
<strong><label></label>
</strong> <span \
style="height:auto"> <a \
href="https://bugreports.qt.io/issues/?jql=project+%3D+QTBUG+AND+fixVersion+%3D+5.15.9" \
rel="noreferrer" target="_blank">QT5.15.9</a>, but since you
are using the
default
QT5.15.2, well
it's not
fixed.</span></div>
<div><span \
style="height:auto"><br> </span></div>
<div><span \
style="height:auto">Best regards,</span></div>
<div><span \
style="height:auto"><br> </span></div>
<div><span \
style="height:auto">KC<br> </span> </div>
</div>
<br>
<div>
<div dir="ltr">Le ven.
8 mars 2024
à 18:28,
Charles <<a \
href="mailto:peacech@gmail.com" rel="noreferrer" \
target="_blank">peacech@gmail.com</a>> a écrit :<br>
</div>
<blockquote \
style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> <div dir="ltr">
<div \
style="font-family:"arial","helvetica",sans-serif;font-size:small">With
C++ the
relevant error
is the first
error line,
the rest is
usually noise.
If you google
gcc
numeric_limits
is not a class
template you
will find <a \
href="https://bugs.gentoo.org/768342" rel="noreferrer" \
target="_blank">https://bugs.gentoo.org/768342</a> <br>
</div>
<div \
style="font-family:"arial","helvetica",sans-serif;font-size:small"><br>
</div>
<div \
style="font-family:"arial","helvetica",sans-serif;font-size:small">If
you use gcc 11
then use gcc
10 otherwise
patch qt
headers as in
<a \
href="https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92d54be896563102786238893a9c645b8bdb43ef" \
rel="noreferrer" target="_blank">https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92d54be896563102786238893a9c645b8bdb43ef</a><br>
</div>
</div>
<br>
<div>
<div dir="ltr">On
Sat, Mar 9,
2024 at
12:49 AM
umbertofilippo
<<a \
href="mailto:umbertofilippo@tiscali.it" rel="noreferrer" \
target="_blank">umbertofilippo@tiscali.it</a>> wrote:<br>
</div>
<blockquote \
style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> <div>
<p>Moving on,</p>
<p><br>
</p>
<p>I have
tried to
remove OpenSSL
from the
"sysroot.toml"
since it is
not required,
and now the
process seems
to go further,
but I am stuck
at a new
error:</p>
<p><br>
</p>
<p>Verifying
host
architecture
'linux-64'...<br>
Verifying
target
architecture
'linux-64'...<br>
zlib:
verifying...<br>
Qt:
verifying...<br>
Python:
verifying...<br>
SIP:
verifying...<br>
PyQt:
verifying...<br>
PyQt3D:
verifying...<br>
PyQtChart:
verifying...<br>
PyQtDataVisualization: verifying...<br>
PyQtNetworkAuth: verifying...<br>
PyQtPurchasing: verifying...<br>
QScintilla:
verifying...<br>
zlib:
installing
component...<br>
Qt: installing
component...<br>
Qt:
downloading
\
'qt-everywhere-src-5.15.2.tar.xz' from <a \
href="https://download.qt.io/archive/qt/5.15/5.15.2/single/" rel="noreferrer" \
target="_blank">https://download.qt.io/archive/qt/5.15/5.15.2/single/</a>...<br>
pyqtdeploy-sysroot: execution of './configure' failed: returned exit
code 2</p>
<p><br>
</p>
<p>What can be
the cause of
this new
error? I see
there is a new
folder now in
the original
pyqt demo
directory
called
\
"sysroot-linux-64" and inside I
see there's
\
"sysroot-linux-64/build/qt-everywhere-src-5.15.2" with a
"configure"
file, but
other than
this I have no
clue sincerely
on why it is
failing.</p>
<p><br>
</p>
<p>I have
attached the
content of
running
build-demo.py
with --verbose</p>
<p><br>
</p>
<p>Hope
someone can
help me.
Thanks.<br>
</p>
<p><br>
</p>
<div>On 3/8/24
12:18,
umbertofilippo
wrote:<br>
</div>
<blockquote>
<p>Hi and many
thanks for you
feedback!</p>
<p><br>
</p>
<p>First of
all let me
tell that I am
very
interested in
finding a
solution to
this problem,
and I will try
to do my best
if I can
contribute in
case it's
needed.</p>
<p><br>
</p>
<p>I just
checked, and
this is what I
can see in my
/usr/include/openssl/opensslv.h file. Cannot tell though if pyqtdeploy
is supposed to
work or not
given these
lines...<br>
</p>
<p><br>
</p>
<p>/*<br>
* SECTION 4:
BACKWARD
COMPATIBILITY<br>
*/<br>
<br>
# define
OPENSSL_VERSION_TEXT
"OpenSSL 3.0.2
15 Mar 2022"<br>
<br>
/* Synthesize
OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */<br>
# ifdef
\
OPENSSL_VERSION_PRE_RELEASE<br> # define
\
_OPENSSL_VERSION_PRE_RELEASE 0x0L<br>
# else<br>
# define
\
_OPENSSL_VERSION_PRE_RELEASE 0xfL<br>
# endif<br>
# define
OPENSSL_VERSION_NUMBER \
\<br>
(
\
(OPENSSL_VERSION_MAJOR<<28) \<br>
\
|(OPENSSL_VERSION_MINOR<<20) \<br>
\
|(OPENSSL_VERSION_PATCH<<4) \<br>
\
|_OPENSSL_VERSION_PRE_RELEASE )<br>
<br>
# ifdef
__cplusplus<br>
}<br>
# endif<br>
<br>
# include
\
<openssl/macros.h><br> # ifndef
\
OPENSSL_NO_DEPRECATED_3_0<br> # define
HEADER_OPENSSLV_H<br>
# endif<br>
<br>
#endif <br>
</p>
<p><br>
</p>
<p>Umberto<br>
</p>
<p><br>
</p>
<div>On 3/7/24
19:11, Kaiser
Chief wrote:<br>
</div>
<blockquote>
<div dir="ltr">
<div>Hi, <br>
<br>
</div>
<div>To
complement my
previous
message (and
after doing a
quick search
through the
source code):</div>
<div>* The
script
"OpenSSL.py"
is looking for
"OPENSSL_VERSION_NUMBER" in \
"/usr/include/openssl/opensslv.h"</div> <div>* In
OpenSSL 1.1.1
(which is
installed on
my Linux), I
can see the
line "#define
OPENSSL_VERSION_NUMBER" in "/usr/include/openssl/opensslv.h".<br>
<br>
</div>
<div>Can you
check that you
have that line
in your header
file too?</div>
<div><br>
</div>
<div>If not,
it's probably
that OpenSSL
updated their
header files
and put the
VERSION_NUMBER
somewhere
else...</div>
<div><br>
</div>
<div>If you
want to run
the demo, I
would
recommend you
install the
default
versions as
written in the
`sysroot.toml`</div>
<div><br>
</div>
<div>If there
are fixes to
make for each
"version
grepping", I
believe that
Phil had a way
to contribute
to plugins for
pyqtdeploy,
but can't
remember
where...<br>
</div>
<div><br>
</div>
<div>Best
regards,</div>
<div><br>
</div>
<div>KC<br>
</div>
</div>
<br>
<div>
<div dir="ltr">Le jeu.
7 mars 2024
à 17:56,
Kaiser Chief
<<a \
href="mailto:kaiser.chiefmail@gmail.com" rel="noreferrer" \
target="_blank">kaiser.chiefmail@gmail.com</a>> a écrit :<br>
</div>
<blockquote \
style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex"> <div dir="ltr">
<div>Hi,</div>
<div><br>
</div>
<div>According
to the sysroot
help page (<a \
href="https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/sysroot.html#openssl" \
rel="noreferrer" target="_blank">https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/sysroot.html#openssl</a>),
if you have
configured
your
`sysroot.toml`
like this:<br>
```</div>
<div>
<pre>[OpenSSL.linux]
version = ""
install_from_source = false</pre>
```</div>
<div><br>
</div>
<div>Then, on
Linux, the
OpenSSL
library used
will be the
one installed
on your OS
with no
assumption on
the version
(so that
should work in
your example).</div>
<div>Now,
that's what is
provided in
the demo
folder for
`pyqtdeploy-3.3.0`,
so that's odd.</div>
<div><br>
</div>
<div>Therefore,
it could be
that the
`pyqtdeploy-sysroot` functionality is struggling to extract the version
number from
your
OS-installed
OpenSSL.</div>
<div><br>
</div>
<div>---<br>
</div>
<div><br>
</div>
<div>I am not
of great help
with that
comment,
however, I
would like to
suggest, if
it's your
first time
with
pyqtdeploy to
give a try at
my Github
repo: <br>
<br>
<a \
href="https://github.com/achille-martin/pyqt-crom" rel="noreferrer" \
target="_blank">https://github.com/achille-martin/pyqt-crom</a> <br>
<br>
</div>
<div>This repo
aims at
demonstrating
how beginner
devs,
intermediate
devs and
expert devs
can benefit
from
pyqtdeploy.<br>
</div>
<div>It also
offers a few
simple
tutorials to
get started
with
pyqtdeploy
(simpler than
the demo in
the official
pyqtdeploy
package) and
optimises bits
of the tool
regarding the
user interface
(for now).</div>
<div><br>
</div>
<div>I can
support you
with your
initial
journey on
discovering
pyqtdeploy
through my
repo if you
wish.<br>
</div>
<div><br>
</div>
<div>Best
regards,</div>
<div><br>
</div>
<div>KC</div>
</div>
<br>
<div>
<div dir="ltr">Le jeu.
7 mars 2024
à 17:06,
umbertofilippo
<<a \
href="mailto:umbertofilippo@tiscali.it" rel="noreferrer" \
target="_blank">umbertofilippo@tiscali.it</a>> a écrit :<br>
</div>
<blockquote \
style="margin:0px 0px 0px 0.8ex;border-left:1px solid \
rgb(204,204,204);padding-left:1ex">Hello everyone,
first time
here for me :)<br>
<br>
<br>
I was giving
pyqtdeploy a
try and I am
stuck at the
very first
step of <br>
the "Building
the Demo"
page.<br>
<br>
<br>
I am on a
Linux-64
machine. I am
following the
tutorial at <br>
<a \
href="https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/demo.html" \
rel="noreferrer" target="_blank">https://www.riverbankcomputing.com/static/Docs/pyqtdeploy/demo.html</a>
and <br>
I have
downloaded the
demo files
from <br>
<a \
href="https://files.pythonhosted.org/packages/44/d4/978017382f0ecc48601944c3fc0f58a5c5075a1d3acd48d09c11ee471b05/pyqtdeploy-3.3.0.tar.gz" \
rel="noreferrer" target="_blank">https://files.pythonhosted.org/packages/44/d4/9780173 \
82f0ecc48601944c3fc0f58a5c5075a1d3acd48d09c11ee471b05/pyqtdeploy-3.3.0.tar.gz</a><br> \
<br> <br>
I have created
a virtual
python
environment
with the
following
packages <br>
and versions
installed:<br>
<br>
Name,Version<br>
_libgcc_mutex,0.1<br>
_openmp_mutex,4.5<br>
bzip2,1.0.8<br>
ca-certificates,2024.2.2<br>
ld_impl_linux-64,2.40<br>
libexpat,2.6.1<br>
libffi,3.4.2<br>
libgcc-ng,13.2.0<br>
libgomp,13.2.0<br>
libnsl,2.0.1<br>
libsqlite,3.45.1<br>
libuuid,2.38.1<br>
libxcrypt,4.4.36<br>
libzlib,1.2.13<br>
ncurses,6.4<br>
openssl,3.2.1<br>
pip,24.0<br>
pyqt5,5.15.10<br>
pyqt5-qt5,5.15.2<br>
pyqt5-sip,12.13.0<br>
pyqtdeploy,3.3.0<br>
python,3.12.2<br>
readline,8.2<br>
setuptools,69.1.1<br>
tk,8.6.13<br>
toml,0.10.2<br>
tzdata,2024a<br>
wheel,0.42.0<br>
xz,5.2.6<br>
<br>
I have tried
to run the
command
"python
build-demo.py"
straight away,
<br>
but I am
getting the
following
error:<br>
<br>
OpenSSL:
verifying...<br>
OpenSSL:
determining
installed
version from <br>
'/usr/include/openssl/opensslv.h'.<br>
pyqtdeploy-sysroot: OpenSSL: unable to extract the version number.<br>
<br>
<br>
OpenSSL is
installed on
my machine and
the result of
doing "openssl
<br>
version" is
"OpenSSL 3.2.1
30 Jan 2024
(Library:
OpenSSL 3.2.1
30 Jan 2024)"<br>
<br>
<br>
Am I supposed
to install the
exact versions
of all the
components
found <br>
in the
\
""sysroot.toml" file to be
able to
run "python
build-demo.py"
<br>
successfully?<br>
<br>
<br>
Thanks,<br>
<br>
<br>
Umberto<br>
<br>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
</blockquote>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</div>
</blockquote>
</blockquote>
</div>
</blockquote></div>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic