Jump to page: 1 2 3
Thread overview
Usability of D on windows?
Aug 23, 2016
John Burton
Aug 23, 2016
Cauterite
Aug 23, 2016
John Burton
Aug 23, 2016
Cauterite
Aug 23, 2016
Adam D. Ruppe
Aug 23, 2016
John Burton
Aug 23, 2016
Adam D. Ruppe
Aug 23, 2016
Cauterite
Aug 23, 2016
John Colvin
Aug 23, 2016
John Burton
Aug 24, 2016
Kagamin
Aug 24, 2016
rikki cattermole
Aug 23, 2016
Seb
Aug 24, 2016
Sean Campbell
Aug 24, 2016
Joakim
Aug 24, 2016
kink
Aug 24, 2016
Chris
Aug 24, 2016
Guillaume Piolat
Aug 25, 2016
kinke
Aug 25, 2016
John Burrton
Aug 25, 2016
Kagamin
Aug 25, 2016
John Burton
Aug 25, 2016
David Nadlinger
Aug 25, 2016
John Burton
August 23, 2016
I've recently gone back to looking at D and like what I see.
I've mostly been looking at it on Linux where it seems efficient and stable.

However the project I'd really like to use it for is on windows (x86-64 but if at all possible I'd like to compiler for x86 as well). But my experience on windows has been poor.

What I want to build is a 3d opengl graphics application. Performance is fairly important. My experience on Linux is that DMD is a great compiler but if you want decent speed you need to use GDC or LDC. (And from looking at the generated code, which backs up that opinion...)

The problem I have is that I can't see to find a decent, stable platform on windows. I installed DMD and visual D and it works well enough. And it's great for trying stuff out, but I worry about speed of produced code for my application.  The website front page tells me that I can run GDC but search all I can and I can't find any kind of installer for windows, only for Linux. I managed to find and install LDC, and that mostly, somewhat works.

Except that half the time the compiler crashes with a stack trace, and sometimes it just hangs. Occasionally if I move and rearrange the code it will manage to compile it. There are also worrying comments on the LDC web page about how "Most programs work just fine" and "Several unit tests still fail" and stuff about it relying on stuff from visual c++ in order to work that make me seriously doubt it's stability and correctness.

I'm like an honest opinion... Am I wasting my time trying to do this project in D on Windows? I'll continue to use and support the language but I don't want to fight a losing battle and end up having to move away anyway...

Is there a stable LDC, or is there possibly something wrong with my install? Is LDC sufficiently working to use for "production"?

If there a GDC port to windows at all? It seems there is, but if there is it's well hidden...
August 23, 2016
On Tuesday, 23 August 2016 at 21:15:40 UTC, John Burton wrote:
>

Well, you're fighting a losing battle by trying to use GDC/LDC on Windows, since Windows is priority #2 for D, and GDC/LDC are still struggling with priority #1 (Linux).

You make the Digital Mars backend sound unusable, but I think you should give it another chance. I personally find most bugs originating from the backend are triggered by corner-cases which can be easily avoided until the bug is fixed.
August 23, 2016
On Tuesday, 23 August 2016 at 21:15:40 UTC, John Burton wrote:
> If there a GDC port to windows at all? It seems there is, but if there is it's well hidden...

It is at the bottom of the downloads page.

https://gdcproject.org/downloads
August 23, 2016
On Tuesday, 23 August 2016 at 21:25:29 UTC, Cauterite wrote:
> On Tuesday, 23 August 2016 at 21:15:40 UTC, John Burton wrote:
>>
>
> Well, you're fighting a losing battle by trying to use GDC/LDC on Windows, since Windows is priority #2 for D, and GDC/LDC are still struggling with priority #1 (Linux).
>
> You make the Digital Mars backend sound unusable, but I think you should give it another chance. I personally find most bugs originating from the backend are triggered by corner-cases which can be easily avoided until the bug is fixed.

Thanks, I'm more worried about the speed of the produced code for DMD. I need to do a lot of vector math and the code produced by DMD just seems way slower. It might be fast enough though so I could try it.
August 23, 2016
On Tuesday, 23 August 2016 at 21:29:31 UTC, Adam D. Ruppe wrote:
> On Tuesday, 23 August 2016 at 21:15:40 UTC, John Burton wrote:
>> If there a GDC port to windows at all? It seems there is, but if there is it's well hidden...
>
> It is at the bottom of the downloads page.
>
> https://gdcproject.org/downloads

Although they have windows as a host it says that the target is arm-linux-gnueabi so I assumed they were cross compilers?
August 23, 2016
On Tuesday, 23 August 2016 at 21:36:12 UTC, John Burton wrote:
It might be fast enough
> though so I could try it.

Remember, if you don't like the compiler's output, you can always substitute it with your own (inline assembly!).

Incidentally I'm in the process of fixing a number of IASM bugs in the frontend right now.
August 23, 2016
On Tuesday, 23 August 2016 at 21:37:57 UTC, John Burton wrote:
> Although they have windows as a host it says that the target is arm-linux-gnueabi so I assumed they were cross compilers?

geeze, you're right. I thought they used to have it.

I always just use dmd on windows anyway myself.
August 23, 2016
On Tuesday, 23 August 2016 at 21:37:57 UTC, John Burton wrote:
> Although they have windows as a host it says that the target is arm-linux-gnueabi so I assumed they were cross compilers?

I heard that GDC worked with MinGW at some point in the past, so it may still be feasible without cross-compilation. You'll have to ask someone else about this though.
August 23, 2016
On Tuesday, 23 August 2016 at 21:15:40 UTC, John Burton wrote:
> Except that half the time the compiler crashes with a stack trace, and sometimes it just hangs. Occasionally if I move and rearrange the code it will manage to compile it. There are also worrying comments on the LDC web page about how "Most programs work just fine" and "Several unit tests still fail" and stuff about it relying on stuff from visual c++ in order to work that make me seriously doubt it's stability and correctness.
>
> I'm like an honest opinion... Am I wasting my time trying to do this project in D on Windows? I'll continue to use and support the language but I don't want to fight a losing battle and end up having to move away anyway...
>
> Is there a stable LDC, or is there possibly something wrong with my install? Is LDC sufficiently working to use for "production"?
>
> If there a GDC port to windows at all? It seems there is, but if there is it's well hidden...

LDC is what you want. I predict you will run into some bugs occasionally, but some of the documentation / wiki stuff is probably old and overly pessimistic about the state of affairs. Please report any bugs you do hit to https://github.com/ldc-developers/ldc/issues (any compiler crash is a bug).

If you have no patience for any bugs and must have the best optimised code on windows, D isn't quite there yet. However, if you can stomach a little pain, the reward is pretty good.

P.S. relying on the microsoft linker is not much different (once it's installed) to relying on ld on linux.
August 23, 2016
On Tuesday, 23 August 2016 at 21:15:40 UTC, John Burton wrote:
> Is there a stable LDC, or is there possibly something wrong with my install? Is LDC sufficiently working to use for "production"?

Forgot the part about the struggling fight of LDC. Their development has caught up quite a lot lately and they are now on par with the DMD frontend.

Also LDC does support Windows, unfortunately the link is a bit hidden from the official downloads page:

https://github.com/ldc-developers/ldc/releases
« First   ‹ Prev
1 2 3