Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 955865 - x11-libs/wxGTK-3.2.7: broke ABI (was: media-gfx/displaycal-py3-3.9.16: crash on startup with <dev-python/wxpython-4.2.3)
Summary: x11-libs/wxGTK-3.2.7: broke ABI (was: media-gfx/displaycal-py3-3.9.16: crash ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal
Assignee: Gentoo wxWidgets project
URL:
Whiteboard:
Keywords:
: 955968 (view as bug list)
Depends on: 955299
Blocks:
  Show dependency tree
 
Reported: 2025-05-12 08:16 UTC by Alexander Petermann
Modified: 2025-05-15 07:10 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Petermann 2025-05-12 08:16:40 UTC
DisplayCal 3.9.16 requires >dev-python/wxpython-4.2.2, otherwise it crashes on startup.

Reproducible: Always

Steps to Reproduce:
1. start displaycal from command line
Actual Results:  
 $ displaycal
Acquired lock file: <DisplayCAL.main.AppLock object at 0x7f2e1116ee40>
displaycal 3.9.16 2022-11-21T22:56:25Z
gentoo 2.17 n/a x86_64
Python 3.13.3 (main, Apr 22 2025, 08:51:31) [GCC 14.2.1 20241221]
Faulthandler 
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/DisplayCAL/main.py", line 547, in main
    _main(module, name, app_lock_file_name)
    ~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/DisplayCAL/main.py", line 140, in _main
    from DisplayCAL.wxaddons import wx
  File "/usr/lib/python3.13/site-packages/DisplayCAL/wxaddons.py", line 9, in <module>
    from DisplayCAL.wxfixes import wx, GenButton, PlateButton, get_dialogs
  File "/usr/lib/python3.13/site-packages/DisplayCAL/wxfixes.py", line 28, in <module>
    from wx import __version__ as wx_version
  File "/usr/lib/python3.13/site-packages/wx/__init__.py", line 17, in <module>
    from wx.core import *
  File "/usr/lib/python3.13/site-packages/wx/core.py", line 12, in <module>
    from ._core import *
ImportError: /usr/lib/python3.13/site-packages/wx/_core.cpython-313-x86_64-linux-gnu.so: undefined symbol: _ZN14wxTranslations27GetBestAvailableTranslationERK8wxString, version WXU_3.0
┌──────────────────────────────────────────────────────────────────────────────┐
│ Traceback (most recent call last):                                           │
│   File "/usr/lib/python3.13/site-packages/DisplayCAL/main.py", line 547, in  │
│ main                                                                         │
│     _main(module, name, app_lock_file_name)                                  │
│     ~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^                                  │
│   File "/usr/lib/python3.13/site-packages/DisplayCAL/main.py", line 140, in  │
│ _main                                                                        │
│     from DisplayCAL.wxaddons import wx                                       │
│   File "/usr/lib/python3.13/site-packages/DisplayCAL/wxaddons.py", line 9,   │
│ in <module>                                                                  │
│     from DisplayCAL.wxfixes import wx, GenButton, PlateButton, get_dialogs   │
│   File "/usr/lib/python3.13/site-packages/DisplayCAL/wxfixes.py", line 28,   │
│ in <module>                                                                  │
│     from wx import __version__ as wx_version                                 │
│   File "/usr/lib/python3.13/site-packages/wx/__init__.py", line 17, in       │
│ <module>                                                                     │
│     from wx.core import *                                                    │
│   File "/usr/lib/python3.13/site-packages/wx/core.py", line 12, in <module>  │
│     from ._core import *                                                     │
│ ImportError:                                                                 │
│ /usr/lib/python3.13/site-packages/wx/_core.cpython-313-x86_64-linux-gnu.so:  │
│ undefined symbol:                                                            │
│ _ZN14wxTranslations27GetBestAvailableTranslationERK8wxString, version        │
│ WXU_3.0                                                                      │
└──────────────────────────────────────────────────────────────────────────────┘
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/DisplayCAL/main.py", line 547, in main
    _main(module, name, app_lock_file_name)
    ~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/DisplayCAL/main.py", line 140, in _main
    from DisplayCAL.wxaddons import wx
  File "/usr/lib/python3.13/site-packages/DisplayCAL/wxaddons.py", line 9, in <module>
    from DisplayCAL.wxfixes import wx, GenButton, PlateButton, get_dialogs
  File "/usr/lib/python3.13/site-packages/DisplayCAL/wxfixes.py", line 28, in <module>
    from wx import __version__ as wx_version
  File "/usr/lib/python3.13/site-packages/wx/__init__.py", line 17, in <module>
    from wx.core import *
  File "/usr/lib/python3.13/site-packages/wx/core.py", line 12, in <module>
    from ._core import *
ImportError: /usr/lib/python3.13/site-packages/wx/_core.cpython-313-x86_64-linux-gnu.so: undefined symbol: _ZN14wxTranslations27GetBestAvailableTranslationERK8wxString, version WXU_3.0

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/DisplayCAL/debughelpers.py", line 77, in handle_error
    from DisplayCAL.wxaddons import wx
  File "/usr/lib/python3.13/site-packages/DisplayCAL/wxaddons.py", line 9, in <module>
    from DisplayCAL.wxfixes import wx, GenButton, PlateButton, get_dialogs
  File "/usr/lib/python3.13/site-packages/DisplayCAL/wxfixes.py", line 28, in <module>
    from wx import __version__ as wx_version
  File "/usr/lib/python3.13/site-packages/wx/__init__.py", line 12, in <module>
    __version__ = wx.__version__.VERSION_STRING
                  ^^^^^^^^^^^^^^
AttributeError: partially initialized module 'wx' from '/usr/lib/python3.13/site-packages/wx/__init__.py' has no attribute '__version__' (most likely due to a circular import)
Warning: handle_error(): partially initialized module 'wx' from '/usr/lib/python3.13/site-packages/wx/__init__.py' has no attribute '__version__' (most likely due to a circular import)
Exiting displaycal

Expected Results:  
$ displaycal
Acquired lock file: <DisplayCAL.main.AppLock object at 0x7f0d3556ee40>
displaycal 3.9.16 2022-11-21T22:56:25Z
gentoo 2.17 n/a x86_64
Python 3.13.3 (main, Apr 22 2025, 08:51:31) [GCC 14.2.1 20241221]
Faulthandler 
wxPython 4.2.3 gtk3 (phoenix) wxWidgets 3.2.7
Encoding: utf-8
File system encoding: utf-8
Loading /home/apit/.config/DisplayCAL/DisplayCAL.ini
listening
writing to lock file: port: 15411
Starting up...

I run sway as a window manager and DisplayCal still does not show a window, but at least it does not crash. If run as XWayland application, it comes up and starts as expected: 'env -u WAYLAND_DISPLAY displaycal'
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-05-13 00:37:03 UTC
$ c++filt _ZN14wxTranslations27GetBestAvailableTranslationERK8wxString
wxTranslations::GetBestAvailableTranslation(wxString const&)
Comment 2 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-05-13 00:37:08 UTC
(In reply to Sam James from comment #1)
> $ c++filt _ZN14wxTranslations27GetBestAvailableTranslationERK8wxString
> wxTranslations::GetBestAvailableTranslation(wxString const&)

https://github.com/wxWidgets/wxWidgets/issues/25327
Comment 3 Larry the Git Cow gentoo-dev 2025-05-13 00:44:29 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eadac98eee756933381a0a5a4b553d7a93454347

commit eadac98eee756933381a0a5a4b553d7a93454347
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2025-05-13 00:41:57 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2025-05-13 00:41:57 +0000

    x11-libs/wxGTK: add 3.2.8
    
    Fixes an ABI break in 3.2.7.
    
    Bug: https://bugs.gentoo.org/955299
    Closes: https://bugs.gentoo.org/955865
    Signed-off-by: Sam James <sam@gentoo.org>

 x11-libs/wxGTK/Manifest           |   2 +
 x11-libs/wxGTK/wxGTK-3.2.8.ebuild | 258 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 260 insertions(+)
Comment 4 jospezial 2025-05-13 08:53:02 UTC Comment hidden (obsolete)
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-05-13 12:03:20 UTC Comment hidden (obsolete)
Comment 6 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2025-05-15 07:09:47 UTC
*** Bug 955968 has been marked as a duplicate of this bug. ***