Bug 1023841 - python-wxWidgets-3_0: 'import wx' crash python interpreter with core dump
python-wxWidgets-3_0: 'import wx' crash python interpreter with core dump
Status: RESOLVED DUPLICATE of bug 953017
Classification: openSUSE
Product: openSUSE Distribution
Classification: openSUSE
Component: Basesystem
Leap 42.3
All All
: P5 - None : Major (vote)
: ---
Assigned To: Jan Engelhardt
E-mail List
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2017-02-06 16:38 UTC by Marguerite Su
Modified: 2017-02-17 17:01 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marguerite Su 2017-02-06 16:38:45 UTC
reproduce steps:

1. sudo zypper in python-wxWidgets-3_0
2. python -c "import wx"

expect:

it works

result:

Fatal Error: Mismatch between the program and library build versions detected.
The library used 3.0 (wchar_t,compiler with C++ ABI 1002,STL containers,compatible with 2.8),
and wxPython used 3.0 (wchar_t,compiler with C++ ABI 1010,STL containers,compatible with 2.8).
Aborted (Core dumped)

It looks like python-wxWidgets-3_0 didn't rebuild with the update wxWidgets-3_0, whose upstream now requires everything rebuilt to maintain ABI consistency.

Marguerite
Comment 1 Marguerite Su 2017-02-06 16:39:17 UTC
assigned to jengelh.
Comment 2 Marguerite Su 2017-02-06 16:47:53 UTC
it is now a common problem that packages rely on wxWidgets must be the same ABI version with wxWidgets itself. that is: 

1. wx packages on your system must be built with the wxWidgets that you are currently installed.

2. you must update all wxWidgets packages and applications after wxWidgets itself updated

3. wx packages across OBS must be rebuilt after wxWidgets is updated.

Considering this, I suggest we add a new rpm macro for wxWidgets:

%wxWidgets_runtime_requires \
Requires: wxWidgets(ABI) == 1010
%{nil}

and a provides for wxWidgets main package:

Provides: wxWidgets(ABI) == 1010

This will make packages that didn't get rebuilt with latest wxWidgets "unresolvable". I think this is currently the best solution, or you'll
see hidden problems everywhere randomly.

Of course you have to take care of the different flavors that wxWidgets provides.

Marguerite
Comment 3 Jan Engelhardt 2017-02-06 17:00:13 UTC
Patch is already included; but depending on how long tumbleweed staging takes..

*** This bug has been marked as a duplicate of bug 953017 ***
Comment 4 Bernhard Wiedemann 2017-02-17 17:01:50 UTC
This is an autogenerated message for OBS integration:
This bug (1023841) was mentioned in
https://build.opensuse.org/request/show/458710 Factory / python-wxWidgets-3_0