www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.ide - Building fails using VisualD; works under dub

reply ShadoLight <ettienne.gilbert gmail.com> writes:
Hi,

After a long absence I am returning to D.

So I see we now have dub as package manager. Nice!

So I create a new package (dub init sample1) and pull in a 
dependency (dlangui).   Then modify the source to use the dlangui 
lib. Dlangui pulls in some Derelict and X11 dependencies, but all 
works as expected. Nice!

Then I generate a VisualD solution (dub generate visuald), and 
try to open + build the same project from VS. The solution opens 
fine and editing works fine, but fails to build with:

Building f:\MyProjects\D2\VC2010\Dub\sample1\sample1.exe...
cannot monitor 64-bit executable dmd, no suitable tracker.exe 
found
Building f:\MyProjects\D2\VC2010\Dub\sample1\sample1.exe failed!
Details saved as 
"file://F:\MyProjects\D2\VC2010\Dub\sample1\.dub\obj\

This just shows the error for the exe, but all the 
Derelict/Dlangui libs also fail to build with an identical error:

Building lib\dlangui.lib...
cannot monitor 64-bit executable dmd, no suitable tracker.exe 
found
Building lib\dlangui.lib failed!

The "cannot monitor 64-bit executable dmd" is a bit confusing... 
as far as I can see DMD is in fact a 32 bit exe. And I have no 
idea which "tracker.exe" it is looking for.

I am running on:
Win 7 x64 bit
DMD v2.077.1
Visual Studio 2010 (x32 bit)
VisualD 0.46.0

I'm a bit stumped at this point.. any help will be greatly 
appreciated!
Dec 13 2017
parent reply ShadoLight <ettienne.gilbert gmail.com> writes:
On Wednesday, 13 December 2017 at 10:27:28 UTC, ShadoLight wrote:
 Hi,

 After a long absence I am returning to D.

 So I see we now have dub as package manager. Nice!

 So I create a new package (dub init sample1) and pull in a 
 dependency (dlangui).   Then modify the source to use the 
 dlangui lib. Dlangui pulls in some Derelict and X11 
 dependencies, but all works as expected. Nice!

 Then I generate a VisualD solution (dub generate visuald), and 
 try to open + build the same project from VS. The solution 
 opens fine and editing works fine, but fails to build with:

 Building f:\MyProjects\D2\VC2010\Dub\sample1\sample1.exe...
 cannot monitor 64-bit executable dmd, no suitable tracker.exe 
 found
 Building f:\MyProjects\D2\VC2010\Dub\sample1\sample1.exe failed!
 Details saved as 
 "file://F:\MyProjects\D2\VC2010\Dub\sample1\.dub\obj\

 This just shows the error for the exe, but all the 
 Derelict/Dlangui libs also fail to build with an identical 
 error:

 Building lib\dlangui.lib...
 cannot monitor 64-bit executable dmd, no suitable tracker.exe 
 found
 Building lib\dlangui.lib failed!

 The "cannot monitor 64-bit executable dmd" is a bit 
 confusing... as far as I can see DMD is in fact a 32 bit exe. 
 And I have no idea which "tracker.exe" it is looking for.

 I am running on:
 Win 7 x64 bit
 DMD v2.077.1
 Visual Studio 2010 (x32 bit)
 VisualD 0.46.0

 I'm a bit stumped at this point.. any help will be greatly 
 appreciated!
I forgot to mention: If I use Visual Studio to create a completely new project (File|New|Project|Other languages|D|Console Application) and simply try to build the skeleton project created by VisualD, I get exactly the same error. So it does not seem related to the VisualD solution created by dub. It looks like some kind of x32/x64 bit issue on VS.... but it is strange since DMD, VS and VisualD as well as the generated project are all 32 bit.
Dec 13 2017
parent reply ShadoLight <ettienne.gilbert gmail.com> writes:
On Wednesday, 13 December 2017 at 10:38:27 UTC, ShadoLight wrote:
 On Wednesday, 13 December 2017 at 10:27:28 UTC, ShadoLight 
 wrote:
 Hi,
[snip]
 cannot monitor 64-bit executable dmd, no suitable tracker.exe
[snip] OK, so I found this on the forum [1], where Rainer indicated that tracker.exe is part of MS-Build. Searching on my drive I found tracker.exe is actually part of the Windows SDK (in both x32 and x64 flavours), so I guess what Rainer is referring to as "MS-Build" is actually the (command-line) build system of the SDK. But its location was not specified in my PATH environment variable. Updating my PATH with its location [2] cured the problem. [1] http://forum.dlang.org/post/oqa9in$2scu$1 digitalmars.com [2] c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\ So all is good again!
Dec 13 2017
parent Rainer Schuetze <r.sagitario gmx.de> writes:
On 13.12.2017 15:41, ShadoLight wrote:
 On Wednesday, 13 December 2017 at 10:38:27 UTC, ShadoLight wrote:
 On Wednesday, 13 December 2017 at 10:27:28 UTC, ShadoLight wrote:
 Hi,
[snip]
 cannot monitor 64-bit executable dmd, no suitable tracker.exe
That's a wrong message that stems from the time when there was a different mechanism to monitor 32-bit processes. I've fixed that for the next version.
 [snip]
 
 
 OK, so I found this on the forum [1], where Rainer indicated that 
 tracker.exe is part of MS-Build.
 
 Searching on my drive I found tracker.exe is actually part of the 
 Windows SDK (in both x32 and x64 flavours), so I guess what Rainer is 
 referring to as "MS-Build" is actually the (command-line) build system 
 of the SDK.
It seems it is some variant/predecessor of MsBuild, as there is also an MsBuildHostTask.exe in that folder.
 But its location was not specified in my PATH environment variable.
 
 Updating my PATH with its location [2] cured the problem.
 
 [1] http://forum.dlang.org/post/oqa9in$2scu$1 digitalmars.com
 [2] c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 
 Tools\
tracker.exe is tried to be found in a number of locations, but obviously I missed this one. Keeping all ancient versions of VS and the Windows SDK working is not so easy...
 
 So all is good again!
Good to hear that ;-)
Dec 15 2017