Calligra on Windows: QtDBus

ivan miraglia miraglia.ivan at gmail.com
Wed May 9 00:26:11 BST 2012


hello all,
I'm new in the development of KDE/Calligra, so I think that my 
suggestions may not be the best one, but since I encountered the same 
problem two weeks ago and I solved it somehow, I share my simple solution.

 From what I observed, the emerge tool downloads the source for the 
libdbusmenu-qt version 0.9.2 that are the same that I found at the 
following link:
https://launchpad.net/libdbusmenu-qt (I think it is the official site of 
dbusmenu-qt library).
This package is not suitable for building with Visual Studio as it is.

At the following link
http://windows.kde.org/download.php.
you can download an installer that allows you to install many components 
of KDE on Windows.
During installation process you can choose to download also/only the 
sources of KDE components (and their dependencies).
I downloaded the sources for libdbusmenu-qt. The version is 0.9.0 that 
is sufficient to continue the building process. I used it instead of the 
one downloaded by emerge tool.

I suppose that the same changes that are present in the sources 
downloaded by kdewin-installer can be merged into libdbusmenu-qt version 
0.9.2.

Ivan



> Date: Tue, 8 May 2012 12:50:40 -0300
> From: Andrius da Costa Ribas<andriusmao at gmail.com>
> To: Calligra Suite developers and users mailing list
> 	<calligra-devel at kde.org>
> Subject: Re: Calligra on Windows: QtDBus
> Message-ID:
> 	<CADzOArHY=bGrkAJ3XWcTAbWoBY12SQG49e_Aik+ypjfya9RDJg at mail.gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> __PRETTY_FUNCTION__ is gcc only, I think, I've ifdef'd some of those in the
> past. MSVC equivalent is __FUNCSIG__
> Em 08/05/2012 11:31, "Stuart Dickson"<stuart.dickson at kogmbh.com>  escreveu:
>
>>   Hi Taco,
>>
>> I can confirm that I receive the same build error with the kde-4.8 and the
>> latest version of emerge.
>>
>> I'll ask the folks on the kde-windows community if there is a patch for
>> this yet, I thought one had been prepared, but it's possible that it's not
>> been merged yet.
>>
>> - Stuart
>>
>>
>> On 08/05/2012 16:27, Taco H. in den Bosch wrote:
>>
>> Hi Boudewijn,
>>
>> thanks for your response. I tried building using the emerge tool, and I
>> have tried once more after your response. However, in both cases I get
>> errors during the build process.
>>
>> I am not sure if I now get the same errors as before, but at least in the
>> current case I get compilation errors in the QtDBus component. I have
>> pasted some of the compiler output below.
>>
>> To me these seem like basic compiler dependent problems, but I am using
>> Visual Studio 2010 as suggested in the build instructions.
>>
>> Do you (or does anyone) have suggestions how to fix this?
>>
>> Taco.
>>
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(52) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifie
>> r
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(52) : error C2228: left of '.space' must have
>> class/struct/unio
>> n
>> C:\oss\kde\include\QtCore/qglobal.h(2362) : warning C4512:
>> 'QForeachContainer<T>
>> ' : assignment operator could not be generated
>>          with
>>          [
>>              T=QList<QAction *>
>>          ]
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\
>> src\dbusmenuexporter.cpp(64) : see reference to class template
>> instantiation 'QF
>> oreachContainer<T>' being compiled
>>          with
>>          [
>>              T=QList<QAction *>
>>          ]
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(71) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifie
>> r
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(71) : error C2228: left of '.space' must have
>> class/struct/unio
>> n
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(91) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifie
>> r
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(91) : error C2228: left of '.space' must have
>> class/struct/unio
>> n
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(93) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifie
>> r
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(93) : error C2228: left of '.space' must have
>> class/struct/unio
>> n
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(95) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifie
>> r
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(95) : error C2228: left of '.space' must have
>> class/struct/unio
>> n
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(163) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifi
>> er
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(163) : error C2228: left of '.space' must have
>> class/struct/uni
>> on
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(188) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifi
>> er
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(188) : error C2228: left of '.space' must have
>> class/struct/uni
>> on
>> C:\oss\kde\include\QtCore/qglobal.h(2362) : warning C4512:
>> 'QForeachContainer<T>
>> ' : assignment operator could not be generated
>>          with
>>          [
>>              T=QSet<int>
>>          ]
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\
>> src\dbusmenuexporter.cpp(369) : see reference to class template
>> instantiation 'Q
>> ForeachContainer<T>' being compiled
>>          with
>>          [
>>              T=QSet<int>
>>          ]
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(469) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifi
>> er
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(469) : error C2228: left of '.space' must have
>> class/struct/uni
>> on
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(485) : error C2065: '__PRETTY_FUNCTION__' : undeclared
>> identifi
>> er
>>
>> c:\oss\kde\build\kdesupport\dbusmenu-qt-0.9.2\work\libdbusmenu-qt-0.9.2\src\dbus
>> menuexporter.cpp(485) : error C2228: left of '.space' must have
>> class/struct/uni
>> on
>> emerge debug: Task: Emerge stopped after: 0:06:24.050000
>>
>>   ------------------------------
>> *From*: "Boudewijn Rempt"<boud at valdyas.org>  <boud at valdyas.org>
>> *Sent*: Tuesday, May 08, 2012 11:04 AM
>> *To*: taco at heddesit.nl, "Calligra Suite developers and users mailing
>> list"<calligra-devel at kde.org>  <calligra-devel at kde.org>
>> *Subject*: Re: Calligra on Windows: QtDBus
>>
>> On Tue, 8 May 2012, Taco H. in den Bosch wrote:
>>
>>> Hi everybody,
>>>
>>> I am trying to build Calligra Words on Windows. This is mostly working,
>> except that a number of important
>>> classes (prominently KoDocument) depend on the QtDBus component which is
>> not provided on windows (at least
>>> not in the version 4.8.1 of Qt that I am using).
>>>
>>> There is a Windows build of calligra, maintained by KO GmbH (
>> www.kogmbh.com), so they must have found a way
>>> around this. Can anybody tell me how this is done? I see no facility in
>> the source code to remove the
>>> dependency on QtDBus, so I imagine that they in some way make this
>> component available in Windows. I have
>>> found a couple of references on the internet about doing this, but it
>> seems incomplete and not very
>>> dependable.
>>>
>>> Any pointers in the right direction are appreciated.
>>>
>> Hi Taco!
>>
>> We've short-circuited the base dependency part of calligra by using KDE's
>> windows emerge tool. That builds all the base parts, including dbus on
>> windows, and that enables the Qt dbus library as well. THere's been some
>> talk of making dbus optional or making it use windows' native ipc, but no
>> code has been written yet.
>>
>> You can find instructions on how to build calligra on windows at:
>>
>> http://techbase.kde.org/Projects/KDE_on_Windows
>>
>> and
>>
>> http://community.kde.org/Calligra/Building_Calligra_on_Windows
>>
>> Boudewijn
>> _______________________________________________
>> calligra-devel mailing list
>> calligra-devel at kde.org
>> https://mail.kde.org/mailman/listinfo/calligra-devel
>>
>>
>> _______________________________________________
>> calligra-devel mailing listcalligra-devel at kde.orghttps://mail.kde.org/mailman/listinfo/calligra-devel
>>
>>
>>
>> -- Stuart Dickson // KO GmbH http://kogmbh.com/legal/
>>
>> _______________________________________________
>> calligra-devel mailing list
>> calligra-devel at kde.org
>> https://mail.kde.org/mailman/listinfo/calligra-devel
>>
>>
>




More information about the calligra-devel mailing list