Slow DWT compiles

Nick Sabalausky a at a.a
Fri Jan 9 23:46:57 PST 2009


"Nick Sabalausky" <a at a.a> wrote in message 
news:gk9hub$n0s$1 at digitalmars.com...
> "Bill Baxter" <wbaxter at gmail.com> wrote in message 
> news:mailman.360.1231568636.22690.digitalmars-d at puremagic.com...
>> On Sat, Jan 10, 2009 at 3:11 PM, Nick Sabalausky <a at a.a> wrote:
>>> "Bill Baxter" <wbaxter at gmail.com> wrote in message
>>> news:mailman.355.1231561916.22690.digitalmars-d at puremagic.com...
>>>> The DWT compile times do still seem to be sky-high even after the
>>>> reversion in DMD 1.039.
>>>>
>>>> I just tried building the dwt-samples\treeeditor\Snippet111.d, for
>>>> instance and it's taking insanely long.
>>>>
>>>> Switch back to DMD 1.037 and it compiles in well under a minute.
>>>>
>>>> So my guess is that nobody else but that one other poster has tried
>>>> using DWT and DMD 1.039 together.
>>>>
>>>> Anyway, Walter, if you want a test case, install yerself a copy of
>>>> tango and DWT and try dwt-samples\treeeditor\Snippet111.d  (or
>>>> probably any other dwt snippet.  That's just the first one I tried).
>>>>
>>>> --bb
>>>
>>> Thought I'd add my experience, FWIW:
>>>
>>> I don't seem to have the treeeditor sample (maybe that's new in 3.4-2?), 
>>> but
>>> I tried dwt-samples\examples\simple.d:
>>>
>>> DMD 1.037 Tango 0.99.7 DWT 3.4-1 DSSS 0.76 (oneatatime=no):
>>> dsss build -full simple
>>> - Builds in 34 seconds
>>>
>>> Exactly the same thing but with DMD 1.039:
>>> - Gives me a linker error after about 32 seconds:
>>>
>>> --------------------------------
>>> simple.d => simple
>>> +
>>> D:\DevTool\dsss\bin\rebuild.exe -Idsss_imports\ -I. -S.\ -ID:\DevTool\dsss\include\d
>>>  -SD:\DevTool\dsss\lib\ -full  -ID:\DevTool\dsss\include\d -SD:\DevTool\dsss\lib
>>>  -oqdsss_objs\D -g -gc -JD:\DevTool\dsss\lib/res -J../res -I.. -L/SUBSYSTEM:console:5
>>>  -L/rc:..\dwt simple.d -ofsimple
>>>
>>> OPTLINK (R) for Win32  Release 8.00.1
>>> Copyright (C) Digital Mars 1989-2004  All rights reserved.
>>> dsss_objs\D\dwt-graphics-Path.obj(dwt-graphics-Path)  Offset 0537DH 
>>> Record
>>> Type 0091
>>>  Error 1: Previous Definition Different :
>>> _D5tango4text4Text11__T4TextTaZ4Text4Span6__initZ
>>> --- errorlevel 1
>>> Command D:\DevTool\dsss\bin\rebuild.exe returned with code -1, aborting.
>>
>> I got that with the first DWT sample I tried too using 1.039 too.  37
>> sec seems about right for how long it took to error out.
>> That one was tree\Snippet15 I think.
>> Then I tried the treeeditor one, and was taking a long time so I killed 
>> it.
>>
>>> I may be using some sort of stange unsupported configuration though: I 
>>> ended
>>> up having to change three references in dwthelper from "tango.io." to
>>> "tango.io.device."
>>>
>>> I'm not too concerned about the error at the moment, but I did think it 
>>> was
>>> significant that it got to the linking phase in roughly the same amount 
>>> of
>>> time as DMD 1.037. There seem to be some wildly inconsistent happenings 
>>> in
>>> regards to 1.039's DWT compile times. You're certain your "oneatatme"
>>> setting didn't get reverted to on? Before I turned oneatatime off, both
>>> versions of DMD took around 15 minutes or so.
>>
>> Yes I'm sure I've got oneatatime off.  All I'm doing to switch DMD
>> configs is to unzip the new DMD files on top of the old installation,
>> and run my "usetango.bat" script to fix it up after that.
>>
>> That script definitely isn't smart enough to do something different
>> based on the current version of DMD installed.  So I'm positive that
>> I'm using the same DSSS config for 1.037/1.038/1.039.
>>
>> --bb
>
> Ok, I found the examples you were talking about, they were in 
> "dwt-samples\snippets", not "dwt-samples\examples". I'm getting the same 
> results as you for both "tree\Snippet15.d" and "treeeditor\Snippet111.d". 
> Both compile fine in just over 30 sec on 1.037. On 1.039 
> "tree\Snippet15.d" fails after about 30 sec with the same link error I 
> posted above, and "treeeditor\Snippet111.d" goes on for at least 10 
> minutes (that's when I killed it).

I don't know if this helps anyone, but I added some "pragma(msg, 
__LINE__.stringof);" to "dwt-samples\snippets\treeeditor\Snippet111.d" (the 
one that's hanging), and DMD 1.039 appears to be hanging on this line:

line 102: composite.addListener (DWT.Resize, dgListener( &handleResize, 
composite, text, inset )); 





More information about the Digitalmars-d mailing list