www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.ide - Visual D always rebuilds - "This project is out of date"

reply "David Bregman" <drb sfu.ca> writes:
I created a new console application using visual D. Whenever I 
hit f7 to build, it always does a complete rebuild even if no 
changes have been made. If I try to start debugging, I always get 
the popup window saying that the project is out of date even when 
it's not.

I tried a few things to see if I could narrow down the cause, but 
it seems to be always reproducible.

-uninstalled and reinstalled dmd + visual D (2.065, 3.38-1, 
respectively), deleted and recreated the project files. I thought 
this would fix any timestamp related issues.
-tried with different versions of visual studio (2010, 2012, 
2013).
-tried debug/release/win32/x64

(my OS is win7 x64 in case that matters.)

Is this a known issue? Is there anything else I can try?
Jun 18 2014
parent reply Rainer Schuetze <r.sagitario gmx.de> writes:
On 19.06.2014 06:47, David Bregman wrote:
 I created a new console application using visual D. Whenever I hit f7 to
 build, it always does a complete rebuild even if no changes have been
 made. If I try to start debugging, I always get the popup window saying
 that the project is out of date even when it's not.

 I tried a few things to see if I could narrow down the cause, but it
 seems to be always reproducible.

 -uninstalled and reinstalled dmd + visual D (2.065, 3.38-1,
 respectively), deleted and recreated the project files. I thought this
 would fix any timestamp related issues.
 -tried with different versions of visual studio (2010, 2012, 2013).
 -tried debug/release/win32/x64

 (my OS is win7 x64 in case that matters.)

 Is this a known issue? Is there anything else I can try?
I guess it is: https://issues.dlang.org/show_bug.cgi?id=12922 You can enable "Show why a target is rebuilt" on the "Projects and solutions->Visual D Settings" page to see what is causing the issue. I suspect unchecking "Monitor OPTLINK dependencies" helps.
Jun 19 2014
parent reply "David Bregman" <drb sfu.ca> writes:
Thanks, unchecking "Monitor OPTLINK dependencies" seems to stop 
the unnecessary rebuilding.

I'm not sure I understand exactly what that option does though, 
could I run into other issues with it disabled? I assume defaults 
to enabled for a reason.

If you don't have access to a machine where this issue is 
reproducible, maybe I could run some tests for you, just let me 
know.
Jun 19 2014
parent Rainer Schuetze <r.sagitario gmx.de> writes:
On 19.06.2014 11:04, David Bregman wrote:
 Thanks, unchecking "Monitor OPTLINK dependencies" seems to stop the
 unnecessary rebuilding.

 I'm not sure I understand exactly what that option does though, could I
 run into other issues with it disabled? I assume defaults to enabled for
 a reason.
It is used to monitor updates of libraries that are not explicitely listed on the command line, but are searched for by the linker due to "pragma(lib)" directives in the object file. It is usually not a problem to have the option disabled as these libraries tend to be unchanged. My usecase for this is the D runtime library itself, which I rebuild from time to time.
 If you don't have access to a machine where this issue is reproducible,
 maybe I could run some tests for you, just let me know.
Thanks for the offer, I hope I can address this issue soon.
Jun 20 2014