[PyKDE] PyKDE fails to compile on Debian
Jim Bublitz
jbublitz at nwinternet.com
Sun Mar 12 19:24:19 GMT 2006
On Sunday 12 March 2006 10:01, Gudjon I. Gudjonsson wrote:
> Þann Sunnudagur 12. mars 2006 19:00 skrifaði Jim Bublitz:
> > On Sunday 12 March 2006 08:35, Gudjon I. Gudjonsson wrote:
> > > sipkdecorepart0.o sipkdecorepart0.cpp
> > > sip/kdecore/ktimezones.sip: In function 'PyObject*
> > > convertFrom_ZoneMap(void*)':
> > > /usr/include/kde/ktimezones.h:191: error: 'KTimezone::KTimezone(const
> > > KTimezone&)' is private
> > > sip/kdecore/ktimezones.sip:209: error: within this context
> > > sipkdecorepart0.cpp: In function 'void* init_KTimezones(sipWrapper*,
> > > PyObject*, sipWrapper**)':
> > > /usr/include/kde/ktimezones.h:340: error: 'KTimezones::KTimezones(const
> > > KTimezones&)' is private
> > > sipkdecorepart0.cpp:9497: error: within this context
> > > sipkdecorepart0.cpp: In function 'void* init_KTimezone(sipWrapper*,
> > > PyObject*, sipWrapper**)':
> > > /usr/include/kde/ktimezones.h:191: error: 'KTimezone::KTimezone(const
> > > KTimezone&)' is private
> > > sipkdecorepart0.cpp:10450: error: within this context
> >
> > According to the "official" KDE 3.5.0/3.5.1 source from kde.org,
> > KTimezone::KTimezone(const KTimezone&) isn't private. In fact it's
> > implicit (not declared at all as far as I can tell).
> >
> > Can you check the KDE ktimezones.h that's being included when you
> > build/compile and see if/how the copy constructor is declared there?
> > Looks like a difference in KDE source files.
> >
> > Jim
>
> Thanks for a fast answer Jim
> I have to admit I am not the best in C++ but I think this is the section
> you were after and it is private as far as I see.
>
> Regards
> Gudjon
>
> private:
> KTimezone(const KTimezone&);
> KTimezone& operator=(const KTimezone&);
>
> KSharedPtr<KTimezoneSource> m_db;
> QString m_name;
> QString m_countryCode;
> float m_latitude;
> float m_longitude;
> QString m_comment;
> KTimezonePrivate *d;
> };
That's exactly the right place - the KDE source from kde.org doesn't have the
first two lines (the copy constructor and operator). I'll have to see if I
can fix the handwritten code that's calling the copy constructor. In the
meantime, you should be able to do the following edits:
In PyKDE-snapshot20060122/sip/kdecore/kdecore-kde350.diff:
comment out (//) or delete the line containing %Include ktimezones.sip
PyKDE-snapshot20060122/sip/kdeui/kdeui-kde350.diff
comment out (//) or delete the line containing %Include ktimezonewidget.sip
That will remove the KTimezone-related stuff from your PyKDE completely, which
probably won't be too inconvenient. It's new in KDE 3.5.0 and nothing else
depends on it.
Does anybody on the list know why Debian has this difference? Does it extend
to other Debian-based distributions?
Jim
More information about the PyQt
mailing list