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

Alex Willmer alex at moreati.org.uk
Tue Aug 27 02:46:01 BST 2002


Jonathan Gardner wrote:
> 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.
> 

Sorry for leaving so long before I replied to this thread, I'va also 
been working on this, but on Mandrake 8.2. My system is definately KDE 
3.0.1, and I received the same error.

As far as I can tell KDE 3.0.1 doesn't include KURL::htmlURL(), this 
wasn't introduced until 3.0.2. However in the PyKDE sip files (kurl.sip, 
kfileiconview.sip, kfiledetailview.sip) this and the two constructors 
below are included for version 3.0.1.

KFileIconViewItem::KFileIconViewItem(QIconView *parent, KFileItem *fi)
KFileListViewItem::KFileListViewItem(QListView *parent, KFileItem *fi)

(I think these might have been the cause of the further problems you 
reported Jonathon).

Changing the %if KDE_3_0_1 lines to %if KDE_3_0_2 allows me to compile 
without error.

I may be completely wrong, I'm still having a few problems which might 
have been caused by my guess work, but these pages seem to confirm my 
theory (apologies for the long urls).

http://webcvs.kde.org/cgi-bin/cvsweb.cgi/kdelibs/kdecore/kurl.h.diff?r1=1.92%3AKDE_3_0_1_RELEASE&tr1=1.1&r2=1.92.2.1%3AKDE_3_0_2_RELEASE&tr2=1.96&diff_format=h

http://webcvs.kde.org/cgi-bin/cvsweb.cgi/kdelibs/kio/kfile/kfileiconview.h.diff?r1=1.28.2.2%3AKDE_3_0_1_RELEASE&tr1=1.1&r2=1.28.2.3%3AKDE_3_0_2_RELEASE&tr2=1.33&diff_format=h

http://webcvs.kde.org/cgi-bin/cvsweb.cgi/kdelibs/kio/kfile/kfiledetailview.h.diff?r1=1.25.2.1%3AKDE_3_0_1_RELEASE&tr1=1.1&r2=1.25.2.2%3AKDE_3_0_2_RELEASE&tr2=1.25.2.2&diff_format=h

I can provide patches if needed, but the changes are trivial & I'm not 
in Linux at the moment. Hope this helps.

Regards

Alex




More information about the PyQt mailing list