[Kde-bindings] KDE/kdebindings

Andreas Pakulat apaku at gmx.de
Wed May 19 22:55:13 UTC 2010


On 19.05.10 23:39:10, Arno Rehn wrote:
> On Wednesday 19 May 2010 23:16:14 Andreas Pakulat wrote:
> > On 19.05.10 22:47:57, Arno Rehn wrote:
> > > SVN commit 1128652 by arnorehn:
> > > 
> > > remove kdevplatform. it's broken.
> > 
> > Hmm, can this be fixed? I'm guessing someone would need to take care of
> > whatever is being used to generate the bindings?
> No, the mistakes are mostly in KDevPlatform's headers.
> See here:
> 
> /usr/include/kdevplatform/vcs/interfaces/ibrowsableversioncontrol.h:92:1: 
> error: expected unqualified-id before ‘namespace’
> /usr/include/kdevplatform/vcs/interfaces/ibrowsableversioncontrol.h:92:1: 
> error: specialization of ‘template<class T> T 
> qt_extension(QAbstractExtensionManager*, QObject*)’ in different namespace
> /usr/include/QtDesigner/extension.h:94:74: error:   from definition of 
> ‘template<class T> T qt_extension(QAbstractExtensionManager*, QObject*)’
> /usr/include/kdevplatform/vcs/interfaces/ibrowsableversioncontrol.h: In 
> function ‘T qt_extension(QAbstractExtensionManager*, QObject*) [with T = 
> KDevelop::IBrowsableVersionControl*]’:
> /usr/include/kdevplatform/vcs/interfaces/ibrowsableversioncontrol.h:92:1: 
> error: ‘IBrowsableVersionControl_iid’ is not a member of ‘KDevelop’
> /usr/include/kdevplatform/vcs/interfaces/ibrowsableversioncontrol.h:92:1: 
> error: ‘IBrowsableVersionControl_iid’ is not a member of ‘KDevelop’
> 
> [endless list of follow-up errors]
> 
> This is a syntax error (a missing closing brace for 'namespace KDevelop' I 
> think),

Yeap exactly, interesting that gcc didn't complain about this.

> but there's also a huge bunch of methods that are declared in the 
> public API but are simply not implemented (or exported).
> 
> Take a look at how many methods we have to blacklist to have it compiling: 
> http://websvn.kde.org/trunk/KDE/kdebindings/smoke/kdevplatform/smokeconfig.xml?view=markup&pathrev=1128651
> 
> Could be that some or all of these issues are now fixed, but I haven't taken a 
> look at current KDevelop trunk yet.

All of that stuff is implemented since ages (I can't see anything in
there thats not implemented since at least a year), but many of those
are actually interfaces implemented in plugins. For example the whole
IProjectFileManager API is a pure virtual interface imlemented only in
plugins. Looking at the list of classes there its clear that the
bindings don't make any sense if so many things are not included. Thats
all stuff thats necessary to do something useful with the API.

So I guess there's some missing link somewhere that makes the
bindings-generator or generated bindings break... If you're interested
to check why there are these errors (or somebody else) and I (or the
rest of the kdevelop team) can help just let us know.

BTW: We just released kdevplatform 1.0, which won't see any API changes
anymore. We do plan API changes for 1.1 though (i.e. don't guarantee BC
yet for the API).

Andreas

-- 
You are dishonest, but never to the point of hurting a friend.



More information about the Kde-bindings mailing list