[PyKDE] Trying to build PyKDE for KDE 3

Jim Bublitz jbublitz at nwinternet.com
Thu Jun 13 04:55:01 BST 2002


On 13-Jun-02 Alex Willmer wrote:
> Thankyou for the tip, I tried this out and the 'make install' run
> got a bit further, unfortunately another import error occurred.
> Judicious (although very possibly not correct) repetition of
> the above with the '%Include netwm.sip' line, got a little
> further, but after that the import error gets a bit close to
> the bone.

> I've had a look at the libtool line in question, it does contain
> the correct library ('-L/opt/kde3/lib'), however it is a relink
> command, which libtool warns of in the preceding line:
 
> libtool: install: warning: relinking `libkdecorecmodule.la'

Yes - that's normal.
 
> I'm afraid libtool and type_info functions are currently beyond
> me.

As I posted earlier, I'm still not very enlightened regarding
type_info, but it doesn't appear to be the problem.
 
> Thanks for taking the time out to help me with this. 

We try to give everyone their money's worth, and unfortunately
sometimes that's what you get :)

> As an aside. Just some further background, in case of rpm
> screwiness, possibly due to a switch from some unofficial
> texstar kde 3.0.1ish/cvs rpms, to the official Mandrake ones
> while trying to build PyKDE previously (of course rerunning 
> configure afterwards) I nuked the build directory and started
> afresh from the 3.2.4 tarball today. It appears that the
> Mandrake RPMS currently available for 3.0.0 report as 3.0.1 in
> the headers with kdeverison.h  containing:

>#define KDE_VERSION 301
>#define KDE_VERSION_STRING "3.0.1 (CVS >= 20020327)"

Those are the Red Hat rpms, which is what I'd expect for Mandrake.
They definitely are the 3.0.0 version, just mislabeled.
 
> I've modified ckversion.py accordingly. To the best of my
> knowledge, these are definitely the 3.0.0 rpms, 'rpm -qf
> /opt/kde3/include/kdeversion.h' reports'kdelibs3-devel-3.0-10mdk',
> as found at:

> So either I've screwed up so well I can't even spot the error, or
> there is something else going on.

At this point I think there definitely is something else going on.
I've had the RH install (after the version fix) verified, and
another poster verified a Mandrake 8.2 install. The sequence of
errors you're getting doesn't point to any particular code problems
and looks more like a library version problem with something (but
not the 3.0.1 stuff). You'd get these kinds of problems if, for
example, you were linked to Qt1.4.2 instead of Qt3.0.4 (having done
it myself).

I looked at the log file (thanks for posting it!), and don't see a
problem. I'd suggest the following:

1. If you had sip/PyQt installed from Mandrake, get rid of them
(rpm -e). I'm not sure which version they are - if they're pre-3.1,
they have libsip in the wrong place (it should only exist in
python/site-packages now - remove any other versions in /usr/lib,
/usr/local/lib or where-ever). If that was the case, then download
sip and PyQt 3.2.4 from riverbankcomputing.co.uk and
rebuild/re-install. It might also be a good idea to clean all of
the sip/PyQt/PyKDE stuff out of python/site-packages too - maybe
look at libkdecore.la *first* (it's a text file) and see if there's
anything unusual in there (wrong path to libs, etc) sip, PyQt and
PyKDE all need to be 3.2.4 for KDE3.0.0.

2. If the first step doesn't appear to be the problem, you might
want to make sure you have a clean KDE install - check for KDE libs
(other than symlinks) in /usr/lib and other locations other than
/opt/kde3/lib. Also check for libqt and libqt-mt and look for
multiple versions of those (for example libqt.so.2 and libqt.so.3).
If you can, delete and re-install KDE (that's pretty messy on SuSE
because their installer 'yast' depends on KDE - don't know about
Mandrake). Will the PyQt examples run?

Again, the libkdecore.la file in site-packages might provide a hint.
If a necessary lib (like libkdecore or libqt) turns up earlier in
the search path than /opt/kde3/lib or /usr/lib/qt3, it'll get used
instead - I've tried to order things to prevent that, but might not
have eliminated all of the possibilities.

3. Try a clean build of PyKDE - running './configure' again deletes
everything and rebuilds from the ground up. I know it's a long
compile - the next version will be faster, so you might want to wait
for that. I don't think anything will change in the next version
that will affect the problem you're having though. Restore all the
stuff you commented out too (starting with kmutlipledrag.sip) - it
should all work once the real problem is fixed.

I've run into these kinds of problems on my own systems and they
can be very frustrating. The fix is usually simple once you find
the cause. I always appreciate it when people stick with it this
far and am happy to provide any help I can. Personally I think it's
worth it - I've been writing stuff for my own use with PyKDE the
last few weeks and it's really been fun and productive too. 


Jim




More information about the PyQt mailing list