PyQt6 6.7.1 wheel: wrong manylinux glibc version?

Phil Thompson phil at riverbankcomputing.com
Sat Jul 27 12:41:39 BST 2024


I've uploaded 6.7.1-1 wheels to the local PyPI server. To add a little 
jeopardy these are built in the new environment (an Ubuntu 20.04 Intel 
container hosted (via Rosetta) on an Ubuntu 22.04 Arm virtual machine 
itself hosted on an Arm Mac Studio).

There is also an updated wheel for Linux on Arm.

I'll move them to pypi.org in a few days if no problems are reported.

Phil

On 23/07/2024 17:00, Phil Thompson wrote:
> I think this is another case of using a too new Linux distribution to
> build the wheel (like the problem with PyQt5). PyQt-builder sets the
> manylinux version to 2.28 when it should really inspect the extension
> module for GLIBC symbols.  From memory 6.7.1 was built on Ubuntu 22.04
> and v6.7.0 on 20.04.
> 
> I'm in the process of moving from virtual machines to docker
> containers for the Linux builds so I should be able to confirm and
> correct this fairly easily.
> 
> Thanks,
> Phil
> 
> On 23/07/2024 13:34, Holger.Joukl at LBBW.de wrote:
>> Hi,
>> 
>> (very very) long time no see on this list. 😉
>> 
>> I just ran into an issue trying the latest & greatest PyQt6 version 
>> 6.7.1.
>> Looks to me like the wheel that gets installed by pip
>> (PyQt6-6.7.1-cp38-abi3-manylinux_2_28_x86_64.whl)
>> doesn't fit the advertised manylinux glibc.
>> 
>> I'm running on RHEL 8.10 using Python 3.11. While 6.7.1 errors out
>> with a missing glibc version error,
>> 6.7.0 works just fine.
>> 
>> Here goes:
>> 
>> # Cleanup PyQt & deps.
>> 0 $ .venv/python3.11/test/bin/pip uninstall PyQt6 PyQt6-Qt6 PyQt6-sip 
>> -y
>> Found existing installation: PyQt6 6.7.1
>> Uninstalling PyQt6-6.7.1:
>>   Successfully uninstalled PyQt6-6.7.1
>> Found existing installation: PyQt6-Qt6 6.7.2
>> Uninstalling PyQt6-Qt6-6.7.2:
>>   Successfully uninstalled PyQt6-Qt6-6.7.2
>> Found existing installation: PyQt6_sip 13.8.0
>> Uninstalling PyQt6_sip-13.8.0:
>>   Successfully uninstalled PyQt6_sip-13.8.0
>> 0 $ # Make sure there's no bogus stuff cached.
>> 0 $ rm -fr ~/.cache/pip
>> 
>> # Install PyQt 6.7.1 & run myapp with it.
>> 0 $ .venv/python3.11/test/bin/pip install PyQt6
>> Collecting PyQt6
>>   Downloading PyQt6-6.7.1-cp38-abi3-manylinux_2_28_x86_64.whl.metadata 
>> (2.1 kB)
>> Collecting PyQt6-sip<14,>=13.8 (from PyQt6)
>>   Downloading
>> PyQt6_sip-13.8.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.whl.metadata
>> (420 bytes)
>> Collecting PyQt6-Qt6<6.8.0,>=6.7.0 (from PyQt6)
>>   Downloading
>> PyQt6_Qt6-6.7.2-py3-none-manylinux_2_28_x86_64.whl.metadata (534
>> bytes)
>> Downloading PyQt6-6.7.1-cp38-abi3-manylinux_2_28_x86_64.whl (8.2 MB)
>>    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.2/8.2 MB 1.4 MB/s eta 
>> 0:00:00
>> Downloading PyQt6_Qt6-6.7.2-py3-none-manylinux_2_28_x86_64.whl (74.3 
>> MB)
>>    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 74.3/74.3 MB 7.1 MB/s eta 
>> 0:00:00
>> Downloading
>> PyQt6_sip-13.8.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.whl
>> (293 kB)
>>    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 293.9/293.9 kB 10.1 MB/s 
>> eta 0:00:00
>> Installing collected packages: PyQt6-Qt6, PyQt6-sip, PyQt6
>> Successfully installed PyQt6-6.7.1 PyQt6-Qt6-6.7.2 PyQt6-sip-13.8.0
>> 0 $ .venv/python3.11/test/bin/myapp
>> Traceback (most recent call last):
>>   File ".venv/python3.11/test/bin/myapp", line 384, in <module>
>>     main()
>>   File ".venv/python3.11/test/bin/myapp", line 355, in main
>>     import iedit.config
>>   File "src/iedit/config.py", line 16, in <module>
>>     from qtutils.DictBuilderDialog import EnumerationColumn,
>> FQVColumn, TextColumn
>>   File
>> ".venv/python3.11/test/lib64/python3.11/site-packages/qtutils/DictBuilderDialog.py",
>> line 5, in <module>
>>     from qt import QVBoxLayout, QHBoxLayout, QGridLayout
>>   File
>> ".venv/python3.11/test/lib64/python3.11/site-packages/qt/__init__.py",
>> line 27, in <module>
>>     from qtpy.QtGui import (
>>   File
>> ".venv/python3.11/test/lib64/python3.11/site-packages/qtpy/QtGui.py",
>> line 57, in <module>
>>     from PyQt6 import QtGui
>> ImportError: /lib64/libm.so.6: version `GLIBC_2.35' not found
>> (required by
>> .venv/python3.11/test/lib64/python3.11/site-packages/PyQt6/QtGui.abi3.so)
>> 
>> 
>> If I force the previous PyQt 6.7.0 version instead everything works 
>> smoothly:
>> 
>> # Uninstall PyQt 6.7.1 & deps.
>> 1 $ .venv/python3.11/test/bin/pip uninstall PyQt6 PyQt6-Qt6 PyQt6-sip 
>> -y
>> Found existing installation: PyQt6 6.7.1
>> Uninstalling PyQt6-6.7.1:
>>   Successfully uninstalled PyQt6-6.7.1
>> Found existing installation: PyQt6-Qt6 6.7.2
>> Uninstalling PyQt6-Qt6-6.7.2:
>>   Successfully uninstalled PyQt6-Qt6-6.7.2
>> Found existing installation: PyQt6_sip 13.8.0
>> Uninstalling PyQt6_sip-13.8.0:
>>   Successfully uninstalled PyQt6_sip-13.8.0
>> 
>> # Install PyQt 6.7.0 & run myapp.
>> 0 $ .venv/python3.11/test/bin/pip install PyQt6==6.7.0
>> Collecting PyQt6==6.7.0
>>   Downloading
>> PyQt6-6.7.0-1-cp38-abi3-manylinux_2_28_x86_64.whl.metadata (2.1 kB)
>> Collecting PyQt6-sip<14,>=13.6 (from PyQt6==6.7.0)
>>   Using cached
>> PyQt6_sip-13.8.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.whl.metadata
>> (420 bytes)
>> Collecting PyQt6-Qt6<6.8.0,>=6.7.0 (from PyQt6==6.7.0)
>>   Using cached
>> PyQt6_Qt6-6.7.2-py3-none-manylinux_2_28_x86_64.whl.metadata (534
>> bytes)
>> Downloading PyQt6-6.7.0-1-cp38-abi3-manylinux_2_28_x86_64.whl (8.1 MB)
>>    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.1/8.1 MB 29.7 MB/s eta 
>> 0:00:00
>> Using cached PyQt6_Qt6-6.7.2-py3-none-manylinux_2_28_x86_64.whl (74.3 
>> MB)
>> Using cached
>> PyQt6_sip-13.8.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.whl
>> (293 kB)
>> Installing collected packages: PyQt6-Qt6, PyQt6-sip, PyQt6
>> Successfully installed PyQt6-6.7.0 PyQt6-Qt6-6.7.2 PyQt6-sip-13.8.0
>> 0 $ .venv/python3.11/test/bin/myapp
>> # myapp runs successfully...
>> 
>> 
>> Looks to me like something might be amiss with the wheel build here -
>> the advertised manylinux_2_28
>> should work on a glibc 2.28 system (like RHEL 8+) according to
>> https://github.com/pypa/manylinux.
>> 
>> Best regards,
>> Holger
>> 
>> (Please bear with me & ignore the lengthy corporate disclaimer usually
>> added here, sorry...)
>> 
>> 
>> 
>> Landesbank Baden-Wuerttemberg
>> Anstalt des oeffentlichen Rechts
>> Hauptsitze: Stuttgart, Karlsruhe, Mannheim, Mainz
>> HRA 12704
>> Amtsgericht Stuttgart
>> HRA 4356, HRA 104 440
>> Amtsgericht Mannheim
>> HRA 40687
>> Amtsgericht Mainz
>> 
>> Die LBBW verarbeitet gemaess Erfordernissen der DSGVO Ihre
>> personenbezogenen Daten.
>> Informationen finden Sie unter www.lbbw.de/datenschutz.


More information about the PyQt mailing list