Thread overview | |||||||||
---|---|---|---|---|---|---|---|---|---|
|
May 09, 2015 Calypso milestone hit: D adaptation of Qt5 tutorial working | ||||
---|---|---|---|---|
| ||||
Hi! Calypso just got a D translation of the first Qt5 Widgets tutorial building and running: https://github.com/Syniurge/Calypso/blob/master/tests/calypso/qt5/qt5demo.d Result: http://homo-nebulus.fr/dlang/oh%20my.webm Compilation log: https://paste.kde.org/pewbbsw45 Previously Calypso was merely able to work with STL types, this is the first time a large C++ library is successfully mapped and used by D code (Ogre3D is probably close as well, but after Kagamin's suggestion and for a change of scene I switched my focus from Ogre3D to Qt). |
May 09, 2015 Re: Calypso milestone hit: D adaptation of Qt5 tutorial working | ||||
---|---|---|---|---|
| ||||
Posted in reply to Elie Morisse | On Saturday, 9 May 2015 at 02:31:09 UTC, Elie Morisse wrote:
> Hi!
>
> Calypso just got a D translation of the first Qt5 Widgets tutorial building and running:
>
> https://github.com/Syniurge/Calypso/blob/master/tests/calypso/qt5/qt5demo.d
>
> Result: http://homo-nebulus.fr/dlang/oh%20my.webm
>
> Compilation log: https://paste.kde.org/pewbbsw45
>
> Previously Calypso was merely able to work with STL types, this is the first time a large C++ library is successfully mapped and used by D code (Ogre3D is probably close as well, but after Kagamin's suggestion and for a change of scene I switched my focus from Ogre3D to Qt).
Wow! Game changing work here, IMO!
Question: You are using a modified version of LDC, but is that compiler required to consume link to a library created with that custom compiler? What I mean is: Can you use this modified version of LDC to create a library, and then use a generic D compiler to build an application that links to that library?
Mike
|
May 09, 2015 Re: Calypso milestone hit: D adaptation of Qt5 tutorial working | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike |
On 09.05.2015 04:58, Mike wrote:
> On Saturday, 9 May 2015 at 02:31:09 UTC, Elie Morisse wrote:
>> Hi!
>>
>> Calypso just got a D translation of the first Qt5 Widgets tutorial
>> building and running:
>>
>> https://github.com/Syniurge/Calypso/blob/master/tests/calypso/qt5/qt5demo.d
>>
>>
>> Result: http://homo-nebulus.fr/dlang/oh%20my.webm
>>
>> Compilation log: https://paste.kde.org/pewbbsw45
>>
>> Previously Calypso was merely able to work with STL types, this is the
>> first time a large C++ library is successfully mapped and used by D
>> code (Ogre3D is probably close as well, but after Kagamin's suggestion
>> and for a change of scene I switched my focus from Ogre3D to Qt).
>
> Wow! Game changing work here, IMO!
>
> Question: You are using a modified version of LDC, but is that compiler
> required to consume link to a library created with that custom
> compiler? What I mean is: Can you use this modified version of LDC to
> create a library, and then use a generic D compiler to build an
> application that links to that library?
>
> Mike
Very impressive indeed!
Probably discussed before, but as an alternative to a library, would it be possible to use the header generation (-H) to emit .di files compatible with other compilers?
|
May 09, 2015 Re: Calypso milestone hit: D adaptation of Qt5 tutorial working | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike | On Saturday, 9 May 2015 at 02:58:58 UTC, Mike wrote:
> Question: You are using a modified version of LDC, but is that compiler required to consume link to a library created with that custom compiler? What I mean is: Can you use this modified version of LDC to create a library, and then use a generic D compiler to build an application that links to that library?
Should be possible. If you properly encapsulate language extensions, nothing should prevent using the library.
|
May 09, 2015 Re: Calypso milestone hit: D adaptation of Qt5 tutorial working | ||||
---|---|---|---|---|
| ||||
Posted in reply to Rainer Schuetze | On Saturday, 9 May 2015 at 02:58:58 UTC, Mike wrote: > Question: You are using a modified version of LDC, but is that compiler required to consume link to a library created with that custom compiler? What I mean is: Can you use this modified version of LDC to create a library, and then use a generic D compiler to build an application that links to that library? If you manage to hide every C++ symbol, including C++ class/struct/enum types, that should work. On Saturday, 9 May 2015 at 09:56:03 UTC, Rainer Schuetze wrote: > Probably discussed before, but as an alternative to a library, would it be possible to use the header generation (-H) to emit .di files compatible with other compilers? I don't think this is possible since C++ functions for instance are mapped directly and not wrapped inside a D function, and only the Clang libraries know how to properly emit a call. |
May 09, 2015 Re: Calypso milestone hit: D adaptation of Qt5 tutorial working | ||||
---|---|---|---|---|
| ||||
Posted in reply to Elie Morisse | On Saturday, 9 May 2015 at 19:16:33 UTC, Elie Morisse wrote:
> On Saturday, 9 May 2015 at 02:58:58 UTC, Mike wrote:
>> Question: You are using a modified version of LDC, but is that compiler required to consume link to a library created with that custom compiler? What I mean is: Can you use this modified version of LDC to create a library, and then use a generic D compiler to build an application that links to that library?
>
> If you manage to hide every C++ symbol
from the normal compiler I should have said, sorry for the vague answer. Linking would work like with normal D libraries, but the .d or .di files parsed by the normal compiler would have to be emptied of C++ imports so any symbol those imports provided shouldn't appear in the .di file.
|
May 09, 2015 Re: Calypso milestone hit: D adaptation of Qt5 tutorial working | ||||
---|---|---|---|---|
| ||||
Posted in reply to Elie Morisse | On 5/8/2015 7:31 PM, Elie Morisse wrote:
> Hi!
>
> Calypso just got a D translation of the first Qt5 Widgets tutorial building and
> running:
>
> https://github.com/Syniurge/Calypso/blob/master/tests/calypso/qt5/qt5demo.d
>
> Result: http://homo-nebulus.fr/dlang/oh%20my.webm
>
> Compilation log: https://paste.kde.org/pewbbsw45
>
> Previously Calypso was merely able to work with STL types, this is the first
> time a large C++ library is successfully mapped and used by D code (Ogre3D is
> probably close as well, but after Kagamin's suggestion and for a change of scene
> I switched my focus from Ogre3D to Qt).
This is really quite dazz. I'm looking forward to meeting you at DConf!
|
Copyright © 1999-2021 by the D Language Foundation