[PyKDE] PyKDE-3.3.2-2 build problems on stock Red Hat 7.3 system RESOLVED

Jonathan Gardner jgardn at alumni.washington.edu
Sat Aug 24 23:51:01 BST 2002


On Saturday 24 August 2002 10:03 am, Jonathan Gardner wrote:
> cd kdecore && "/usr/bin/make" -f Makefile
> make[1]: Entering directory `/home/Downloads/PyKDE-3.3.2/kdecore'
> g++ -c -pipe -w -I/usr/include/freetype2 -O2 -march=i386 -mcpu=i686
> -fno-exceptions -D_REENTRANT -fPIC  -DSIP_MAKE_MODULE_DLL -DQT_NO_DEBUG
> -DQT_THREAD_SUPPORT -fno-exceptions -I-I -I../extraH -I.
> -I/usr/include/python2.2 -I/usr/include/kde -I-I -I/usr/X11R6/include
> -I/usr/lib/qt3-gcc2.96/include -I/usr/lib/qt3-gcc2.96/mkspecs/default -o
> kdecorehuge.o kdecorehuge.cpp
> sipkdecoreKURLList.cpp: In function `PyObject *sipDo_KURL_htmlURL
> (PyObject *, PyObject *)':
> sipkdecoreKURLList.cpp:509: no matching function for call to
> `KURL::htmlURL ()'
> make[1]: *** [kdecorehuge.o] Error 1
> make[1]: Leaving directory `/home/Downloads/PyKDE-3.3.2/kdecore'
> make: *** [sub-kdecore] Error 2
>
> examining /usr/include/kde/kurl.h, I noticed that the KURL class has no
> method "htmlURL".

I also examined /usr/include/kde/kdeversion.h. What I found was a bit 
disturbing:

#define KDE_VERSION 301
#define KDE_VERSION_STRING "3.0.0-10"
#define KDE_VERSION_MAJOR 3
#define KDE_VERSION_MINOR 0
#define KDE_VERSION_RELEASE 1

So, someone's bright idea is to make version "3.0.0-10" the same as "3.0.1". 
Cute.

This triggers build.py to believe that I am really running KDE 3.0.1, which I 
am not (otherwise I would have htmlURL defined, right?)

So I tinkered around, and manually removed the htmlURL part from the 
sip/kurl.sip file. However, recompiling everything, I only ran into more 
problems... this is not the way to go...

So what I did next is I changed /usr/include/kde/kdeversion.h so that it read 
thus:

#define KDE_VERSION 300
#define KDE_VERSION_STRING "3.0.0-10"
#define KDE_VERSION_MAJOR 3
#define KDE_VERSION_MINOR 0
#define KDE_VERSION_RELEASE 0

And, gratefully, everything worked.

I am appending a file that may be added to the distribution - README.RedHat7.3

I am writing a patch that will allow you to specify the kdeversion manually.  
I'll submit this after I get the first RPM up.

-- 
Jonathan Gardner
jgardn at alumni.washington.edu
-------------- next part --------------
When compiling for Red Hat 7.3, the stock system, make sure you modify the file /usr/include/kde/kdeversion.h to read the following:

#define KDE_VERSION 300
#define KDE_VERSION_STRING "3.0.0-10"
#define KDE_VERSION_MAJOR 3
#define KDE_VERSION_MINOR 0
#define KDE_VERSION_RELEASE 0

I am not sure what else this will break, but PyKDE compiles fine.

Jonathan Gardner, August 24, 2002.


More information about the PyQt mailing list