[REVIEW] Nepomuk query service to be moved to kdebase
Sebastian Trüg
strueg at mandriva.com
Wed Sep 3 18:43:57 BST 2008
On Wednesday 03 September 2008 15:07:04 Alexander Neundorf wrote:
> On Wednesday 03 September 2008, Sebastian Trüg wrote:
> > I just moved the Nepomuk query service to kdereview.
>
> ...
>
> > * What about the interfaces? They are used by the service and should be
> > used by the client, too (once set_source_files_properties works for dbus
> > interfaces in cmake)
>
> Can you be more specific what you want to do and what the problem is ?
oh, sure. Actually I was a bit unfair here. I forgot that the command works
with cmake 2.6, the include parameter is properly passed to the qdbusxml2cpp
call:
set_source_files_properties(
${CMAKE_CURRENT_SOURCE_DIR}/../interfaces/org.kde.nepomuk.QueryService.xml
PROPERTIES INCLUDE "query.h")
qt4_add_dbus_interface(nepomukqueryclient_SRC
${CMAKE_CURRENT_SOURCE_DIR}/../interfaces/org.kde.nepomuk.QueryService.xml
queryserviceinterface)
The resulting problem is with metatypeid. The service interface needs a
metatype id for Query but qdbusxml2cpp does not create that automatically. On
the other hand, adding it to query.h gets me into real trouble (looks like
using Q_DECLARE_METATYPE in a header is not a good idea at all. Only idea I
had just now would be an include file that only contains the
Q_DECLARE_METATYPE and add that as an INCLUDE property, too...):
[ 3%] [ 7%] Building CXX object
nepomuk/queryservice/lib/CMakeFiles/nepomukquery.dir/query.o
Building CXX object
nepomuk/queryservice/lib/CMakeFiles/nepomukquery.dir/queryparser.o
[ 11%] Building CXX object
nepomuk/queryservice/lib/CMakeFiles/nepomukquery.dir/dbusoperators.o
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.h:30:
error: expected constructor, destructor, or type conversion
before 'namespace'
/home/kde4dev/kde/dev/qt/4/include/QtCore/qurl.h:56: error: expected
constructor, destructor, or type conversion before 'typedef'
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:121:
error: 'Nepomuk::Search::QueryParser' has not been declared
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:
In function 'Nepomuk::Search::Query parseQuery(const QString&)':
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:123:
error: 'QueryParser' was not declared in this scope
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:123:
error: expected `;' before 'parser'
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:124:
error: 'parser' was not declared in this scope
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:
At global scope:
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:128:
error: 'Nepomuk::Search::QueryParser' has not been declared
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:129:
error: expected unqualified-id before '{' token
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:136:
error: 'Nepomuk::Search::QueryParser' has not been declared
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:136:
error: ISO C++ forbids declaration of 'QueryParser' with no type
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:
In function 'int QueryParser()':
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:137:
error: only constructors take base initializers
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:137:
error: expected type-specifier before 'Private'
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:137:
error: expected `)' before 'Private'
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:139:
error: 'd' was not declared in this scope
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:
At global scope:
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:144:
error: expected constructor, destructor, or type conversion before '::' token
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:150:
error: 'Nepomuk::Search::QueryParser' has not been declared
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:
In function 'Nepomuk::Search::Query parse(const QString&)':
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:155:
error: 'Term' was not declared in this scope
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:155:
error: template argument 1 is invalid
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:155:
error: invalid type in declaration before ';' token
/home/trueg/kde/dev/kde/src/4/kdereview/nepomuk/queryservice/lib/queryparser.cpp:168:
error: expected `;' before 'term'
make[2]: *** [nepomuk/queryservice/lib/CMakeFiles/nepomukquery.dir/query.o]
Error 1
make[2]: *** Waiting for unfinished jobs....
[...]
More information about the kde-core-devel
mailing list