I solved this problem but felt I should raise a bug about it. I emerged app-emulation/playonlinux-3.5 with no errors, but when I tried to run it I got the error: "PlayOnLinux v3.5 Checking python : [ Ok ] Traceback (most recent call last): File "/usr/share/games/playonlinux/python/mainwindow.py", line 23, in <module> import wx, wx.html File "usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wx/__init__.py", line 45, in <module> File "usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 4, in <module> ImportError: /usr/lib/gcc/i686-pc-linux-gnu/3.4.6/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/lib/libwx_baseu-2.8.so.0)" Turned out that I was using a gcc compiler earlier then version 4.2. If I set Gentoo to use a gcc compiler =>4.2 then it work with no error. Reproducible: Always Steps to Reproduce: 1. Run "playonlinux" Actual Results: PlayOnLinux v3.5 Checking python : [ Ok ] Traceback (most recent call last): File "/usr/share/games/playonlinux/python/mainwindow.py", line 23, in <module> import wx, wx.html File "usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wx/__init__.py", line 45, in <module> File "usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 4, in <module> ImportError: /usr/lib/gcc/i686-pc-linux-gnu/3.4.6/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/lib/libwx_baseu-2.8.so.0)
Created attachment 194901 [details, diff] Patch to add a dependency for gcc version 4.2 or higher he is a patch for /usr/portage/app-emulation/playonlinux/playonlinux-3.5.ebuild that adds ">=sys-devel/gcc-4.2" to the RDEPEND and fixes this bug.
Created attachment 194902 [details, diff] Patch to add a dependency for gcc version 4.2 or higher Spelling mistake with file name of previous patch.
Actually, it doesn't look linked to playonlinux but to wxpython. I checked and it looks like /usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wx/_core.py at line 4 imports _core_ which is a .so file (compiled). Did you compile wxpython with >=gcc4.2 and then try to run it with gcc-3 ?
(In reply to comment #3) > Actually, it doesn't look linked to playonlinux but to wxpython. > I checked and it looks like > /usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wx/_core.py at line 4 > imports _core_ which is a .so file (compiled). > > Did you compile wxpython with >=gcc4.2 and then try to run it with gcc-3 ? > To test this I switch to gcc-3 then re-emerged both wxpython then playonlinux Linux and still the same error. So I used gcc-config to switch back to gcc-4 and playonlinux worked (no re-emerging needed). A different application also had the same issues and was disucssed on the Gentoo forum, see http://forums.gentoo.org/viewtopic-t-612695.html I still think playonlinux is dependent on gcc-4.2 or higher.
I've just tested in my chroot: - install gcc-3 - change gcc to gcc-3 - merging wxpython and depends - launch getdep script (scanelf and so one) returns: Altdorf ~ # ./scripts/getdep.sh wxpython dev-lang/python (/usr/lib/libpython2.6.so.1.0) sys-devel/gcc (/usr/lib/gcc/i686-pc-linux-gnu/4.3.2/libstdc++.so.6) sys-libs/glibc (/lib/libc.so.6) sys-libs/glibc (/lib/libm.so.6) x11-libs/wxGTK (/usr/lib/libwx_baseu-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_baseu_net-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_baseu_xml-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_adv-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_aui-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_core-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_gizmos-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_gl-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_html-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_media-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_richtext-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_stc-2.8.so.0) x11-libs/wxGTK (/usr/lib/libwx_gtk2u_xrc-2.8.so.0) In my opinion, this is linked to wxpython. Python team, can you look at this ? Thanks
You'll get this error whenever you try to run a program linked to any C++ library built with a later version of GCC than you currently have selected in gcc-config. In this case, the offending library is /usr/lib/libwx_baseu-2.8.so.0, which belongs to wxGTK: dirtyepic@halo ~ $ qfile /usr/lib/libwx_baseu-2.8.so.0 x11-libs/wxGTK (/usr/lib64/libwx_baseu-2.8.so.0) It's not that playonlinux requires 4.2, it's that wxGTK is linked against the libstdc++.so.6 library from 4.2 which contains a symbol (GLIBCXX_3.4.9) which doesn't exist in earlier versions of GCC. When you switch to an earlier version with gcc-config, it suddenly can't find that symbol and you get an error. For eg. my wxGTK is built with GCC 4.4, and if I switch to 4.3 I can reproduce the same error: dirtyepic@halo ~ $ python Python 2.6.2 (r262:71600, Jun 13 2009, 23:15:08) [GCC 4.4.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import wx Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/__init__.py", line 45, in <module> from wx._core import * File "/usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 4, in <module> import _core_ ImportError: /usr/lib/gcc/x86_64-unknown-linux-gnu/4.3.3/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /usr/lib/libwx_baseu-2.8.so.0) Long story short, rebuild wxGTK.