Stock T2D compile error VS 2013
by Dan McLaughlin · in Torque 2D Beginner · 07/29/2014 (7:41 am) · 15 replies
Hello,
I clones T2D and have a fresh computer and install of VS 2013 Express. On loading the VS 2013 project, doing a clean, setting to either Debug or Release I get a compile error in CustomBuilds. Note the extra projects (e.g. zlib) compile fine, it seems to be choking on the T2D project file. The output just says "Access is denied".
Ideas? Has anybody else gotten this to compile.
I clones T2D and have a fresh computer and install of VS 2013 Express. On loading the VS 2013 project, doing a clean, setting to either Debug or Release I get a compile error in CustomBuilds. Note the extra projects (e.g. zlib) compile fine, it seems to be choking on the T2D project file. The output just says "Access is denied".
Ideas? Has anybody else gotten this to compile.
About the author
#2
Here's where it dies in the Microsoft.CppCommon.targets file
<CustomBuild
Sources ="@(CustomBuild)"
BuildSuffix ="$(_BuildSuffix)"
TrackerLogDirectory ="%(CustomBuild.TrackerLogDirectory)"
MinimalRebuildFromTracking ="%(CustomBuild.MinimalRebuildFromTracking)"
TLogReadFiles ="@(CustomBuildTLogReadFiles)"
TLogWriteFiles ="@(CustomBuildTLogWriteFiles)"
TrackFileAccess ="$(TrackFileAccess)"
ToolArchitecture ="$(CustomBuildToolArchitecture)"
Here's the log
4>------ Build started: Project: Torque2D, Configuration: Release Win32 ------
4> Performing Custom Build Tools
4> Access is denied.
4> Performing Custom Build Tools
4> Access is denied.
4> Performing Custom Build Tools
4> Access is denied.
4> Performing Custom Build Tools
4> Access is denied.
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" exited with code 5.
========== Build: 3 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
07/29/2014 (4:03 pm)
Hmmm, no, that would be too easy! Here's where it dies in the Microsoft.CppCommon.targets file
<CustomBuild
Sources ="@(CustomBuild)"
BuildSuffix ="$(_BuildSuffix)"
TrackerLogDirectory ="%(CustomBuild.TrackerLogDirectory)"
MinimalRebuildFromTracking ="%(CustomBuild.MinimalRebuildFromTracking)"
TLogReadFiles ="@(CustomBuildTLogReadFiles)"
TLogWriteFiles ="@(CustomBuildTLogWriteFiles)"
TrackFileAccess ="$(TrackFileAccess)"
ToolArchitecture ="$(CustomBuildToolArchitecture)"
Here's the log
4>------ Build started: Project: Torque2D, Configuration: Release Win32 ------
4> Performing Custom Build Tools
4> Access is denied.
4> Performing Custom Build Tools
4> Access is denied.
4> Performing Custom Build Tools
4> Access is denied.
4> Performing Custom Build Tools
4> Access is denied.
4>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(170,5): error MSB6006: "cmd.exe" exited with code 5.
========== Build: 3 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
#3
This machine is about a month old and clean, not lots on it yet.
07/29/2014 (4:15 pm)
Hmm, just did a full git clone again and tried in a virgin space, didn't touch anything and same error. This machine is about a month old and clean, not lots on it yet.
#4
07/30/2014 (6:49 am)
I'll have to try this with Express. Pro compiles a fresh clone with no issues after forcing project file updates.
#5
These are extremely different machines and versions of Visual Studio (express-ultimate, 2013-2010) and I'm seeing the same error. Do you folks have something special on your machines that didn't make it into the repo?
07/30/2014 (1:08 pm)
I pulled out a Win7 Virtual Machine running VS 2010 Ultimate and ... same result! The VM is running on a Mac Pro - not the same machine. These are extremely different machines and versions of Visual Studio (express-ultimate, 2013-2010) and I'm seeing the same error. Do you folks have something special on your machines that didn't make it into the repo?
#6
According to the Getting Started Guide there are no additional dependencies, and I don't recall ever having to install any. But I always have had T3D installed as well - which requires the DirectX 9.0c SDK. But I don't think that's it either. Just in the last week I've compiled this same code on Windows 7 Enterprise 64 bit and Windows 8.1 Ultimate 64 bit with no problems (that latter one was just last night on a fresh clone).
Hopefully someone else has seen something similar - and has a solution.
07/30/2014 (2:26 pm)
That's pretty awesome - I've been working with Torque for 10 years and have never seen this. Across dozens of computers/operating system versions/Visual Studio versions. You've found a really unique issue!According to the Getting Started Guide there are no additional dependencies, and I don't recall ever having to install any. But I always have had T3D installed as well - which requires the DirectX 9.0c SDK. But I don't think that's it either. Just in the last week I've compiled this same code on Windows 7 Enterprise 64 bit and Windows 8.1 Ultimate 64 bit with no problems (that latter one was just last night on a fresh clone).
Hopefully someone else has seen something similar - and has a solution.
#7
They are both 64 bit, the computer is running 8.1 and the VM is running 7.
Given all this it has to be something stupid, probably a setting in Visual Studio that you do without thinking that I haven't done, hold on ...
Ah ha! Change the build from Win32 to x64 - it compiled!
By default it comes up Win32. It wants to do a 64 bit build. OK.
But, wait! This was on the VM, try it on the 8.1 Machine.
Fresh pull, load project, no x64? OK, create one. Build ... same error.
So this is progress, I got one of them to build. What are your 64/32 bit and configuration settings?
07/30/2014 (2:45 pm)
Eggcellent, I've been using T2D for two weeks, my work is done here. They are both 64 bit, the computer is running 8.1 and the VM is running 7.
Given all this it has to be something stupid, probably a setting in Visual Studio that you do without thinking that I haven't done, hold on ...
Ah ha! Change the build from Win32 to x64 - it compiled!
By default it comes up Win32. It wants to do a 64 bit build. OK.
But, wait! This was on the VM, try it on the 8.1 Machine.
Fresh pull, load project, no x64? OK, create one. Build ... same error.
So this is progress, I got one of them to build. What are your 64/32 bit and configuration settings?
#8
github.com/GarageGames/Torque2D/issues/212
You could also try to compile the previous version of T2D - a button to the source of version 2.0 is available on the releases page. github.com/GarageGames/Torque2D/releases
07/30/2014 (2:47 pm)
The only open issue I am aware of regarding Visual Studio is the one related to missing LeapSDK .dll's.github.com/GarageGames/Torque2D/issues/212
You could also try to compile the previous version of T2D - a button to the source of version 2.0 is available on the releases page. github.com/GarageGames/Torque2D/releases
#9
Now on the 8.1 computer install I fiddled with the Configurations a bit, and I did see that x64. I thought that I had added that, so I deleted it. But I think that is a required setting, and it could be that VS registered that deletion on my private account, so that even when I downloaded a new repo I picked up that setting again. I did re-add a x64 Configuration setting but it's still barfing, am looking into that.
Goofy VSisms, but this might be what's going on. Again - what is the philosophy behind those Configuration settings, any ideas here?
07/30/2014 (2:55 pm)
By day I do VS/C# ... this reminds me of something we've seen with these configurations. VS is weird, some things get saved locally per user and some get saved in the project file. Oddly - to my mind - I believe these configurations get saved locally. Now on the 8.1 computer install I fiddled with the Configurations a bit, and I did see that x64. I thought that I had added that, so I deleted it. But I think that is a required setting, and it could be that VS registered that deletion on my private account, so that even when I downloaded a new repo I picked up that setting again. I did re-add a x64 Configuration setting but it's still barfing, am looking into that.
Goofy VSisms, but this might be what's going on. Again - what is the philosophy behind those Configuration settings, any ideas here?
#10
07/30/2014 (2:59 pm)
This is really unfortunate, because T2D is pretty sweet in general.
#11
Anyhow hold on, turns out that x64 build I got didn't actually build the executable, it just built everything else.
So I'm back to confusion.
07/30/2014 (3:06 pm)
T2D IS sweet. Anyhow hold on, turns out that x64 build I got didn't actually build the executable, it just built everything else.
So I'm back to confusion.
#12
So why did this get set across two computers? I'm special ... you see, I use Cygwin under Windows, and just do the Git pull from there. Cygwin has a nice .bashrc file which I usually uncomment, and in there they have a more restrictive umask. instead of 022 they choose 027, which denies exec for group+others. The build apparently runs as another user, or some other Microsoft oddity, so it can't execute nasm.exe.
Problem solved ....
07/30/2014 (3:32 pm)
OK, after some investigation I figured it out. You guys are supplying a nasm.exe to compile some assembly (yay! assembly), but when it's cloned from the repo the executable bit is getting set to not executable. Changing the executable bit and it compiles now. So why did this get set across two computers? I'm special ... you see, I use Cygwin under Windows, and just do the Git pull from there. Cygwin has a nice .bashrc file which I usually uncomment, and in there they have a more restrictive umask. instead of 022 they choose 027, which denies exec for group+others. The build apparently runs as another user, or some other Microsoft oddity, so it can't execute nasm.exe.
Problem solved ....
#13
Somebody should put that in the docs just in case.
07/30/2014 (3:38 pm)
Well, that explains why I've never seen that one....Somebody should put that in the docs just in case.
#14
07/30/2014 (3:45 pm)
Yeah, going a little further, actually no pull using Cygwin git gave me .exe's with the bit set. Maybe the global .bashrc is set, or a git setting, I didn't dig into it but went to a Windows Git tool - SourceTree. Now all the bits download correctly. FYI -
#15
When somebody says that I usually think "Well whadya waiting for??" :)
Where is a good place for this?
07/31/2014 (4:39 am)
"Somebody should put that in the docs just in case."When somebody says that I usually think "Well whadya waiting for??" :)
Where is a good place for this?
Torque Owner Richard Ranft
Roostertail Games