Missing al.exe when building from solution file

Hi

Just downloaded Team City to give it a spin on a .NET project I'm working on, and I'm running into this issue. We have a Windows 2003 R2 Server (Service Pack 2), and I've made sure .NET framework 3.5 is installed. Our project has just been upgraded to 3.5. We have a solution file created from Visual Studio 2008, and when I try to build I get this:

C:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets(2083, 9): error MSB3091: Task failed because "AL.exe" was not found, or the correct Microsoft Windows SDK is not installed. The task is looking for "AL.exe" in the "bin" subdirectory beneath the location specified in the InstallationFolder value of the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v6.0A. You may be able to solve the problem by doing one of the following: 1) Install the Microsoft Windows SDK for Windows Server 2008 and .NET Framework 3.5. 2) Install Visual Studio 2008. 3) Manually set the above registry key to the correct location. 4) Pass the correct location into the "ToolPath" parameter of the task.

I tried manually adding the mentioned registry key, as it does not exist, but this only resulted in al.exe giving a rather unhelpful "128" error code.

Any ideas?

5 comments

Hello,
Do you have VS2008 on the machine or Windows SDK 6.0A?

Could you please try to build your solution file on the agent machine from
msbuild.exe.
(simple run it from the folder where solution file is)

Thanks!
--
Eugene Petrenko
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

Hi

Just downloaded Team City to give it a spin on a .NET project I'm
working on, and I'm running into this issue. We have a Windows 2003 R2
Server (Service Pack 2), and I've made sure .NET framework 3.5 is
installed. Our project has just been upgraded to 3.5. We have a
solution file created from Visual Studio 2008, and when I try to build
I get this:

C:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets(2083,
9): error MSB3091: Task failed because "AL.exe" was not found, or the
correct Microsoft Windows SDK is not installed. The task is looking
for "AL.exe" in the "bin" subdirectory beneath the location specified
in the InstallationFolder value of the registry key
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v6.0A.
You may be able to solve the problem by doing one of the following:
1) Install the Microsoft Windows SDK for Windows Server 2008 and .NET
Framework 3.5. 2) Install Visual Studio 2008. 3) Manually set the
above registry key to the correct location. 4) Pass the correct
location into the "ToolPath" parameter of the task.

I tried manually adding the mentioned registry key, as it does not
exist, but this only resulted in al.exe giving a rather unhelpful
"128" error code.

Any ideas?



0

We have had that before, you need to make sure you have the 2.0 sdk installed and if its still missing grab it from a machine that has vs installed.

0

I modified the registry by adding the key (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v6.0A) and pointed the InstallationFolder entry to C:\Program Files\Microsoft.NET\SDK\v2.0\ I also had to copy al.exe into this location. This solved the problem.

I don't want to install VS2008 on this machine, as it is a Build server. I'm not sure what Windows SDK 6.0A is. I'm fairly new to windows and .NET, coming from a background of mostly Linux and Java, and I find all the different SDKs and versions of software very confusing :P

But at least I got it working.

0

Hm, seems I was to quick on this. I got back to this today, and now I get the "al.exe exited with code 128 error". Apparently my registry hack was not enough. I now did as you asked, and built using msbuild.exe (I used the one in the .NET 3.5 folder). This seems to work, and the solution builds. So, how can I make this work for Team City, without installing Visual Studio 2008 on the build server?

0

I copied the v6.0A files from my computer and onto the build server, and made the necessary changes in the registry. This seems to solve the problem.

0

Please sign in to leave a comment.