[PyKDE] Runtimeerror with pyKDE 3.8.0 on SuSE 9.0
jbublitz at nwinternet.com
Wed Mar 10 19:19:01 GMT 2004
On Wednesday March 10 2004 06:10, Jakobi Mikrobi wrote:
> I compiled pyKDE 3.8.0 on SuSE Linux 9.0 without any errors.
> After running "python importTest.py" the following text is
> Testing PyKDE module imports
> Traceback (most recent call last):
> File "importTest.py", line 7, in ?
> exec ("import " + mod)
> File "<string>", line 1, in ?
> File "/usr/lib/python2.3/site-packages/kdecore.py", line
> 35, in ? import libkdecorec
> undefined symbol: _ZN19KAcceleratorManager6manageEP7QWidget
> Is there a way of fixing this problem?
In the kdelibs sources I have (from kde.org) beginning with KDE
3.1.3, kaccelmanager.[h, cpp] appear in both kdecore and kdeui.
sip won't accept the symbols in both modules (since kdeui
imports kdecore), so I made the choice to include it only in
kdecore. Apparently some (or all?) distributions include it only
in libkdeui, so all of its symbols will be undefined in the
PyKDE kdecore module.
The solution (which appears to work in all cases) is to delete
kaccelmanager.sip from the kdecore-kde3*.sip files and add it to
the kdeui-kde3*.sip files. The line to be deleted/added is:
in each case. You then need to rebuild and recompile PyKDE. It's
only necessary to modify the kdecore-kde3*.sip and
kdeui-kde3*.sup files that correspond to the version of KDE
you're compiling against. The files are in the sip/ directory.
For SuSE 9.0 you probably want to modify kdeui-kde314.sip and
kdecore-314.sip (I believe it shipped with KDE 3.1.4)
More information about the PyQt