Re: More .net 3.5 Funnies

Ryan Boggs <[email protected]>
Newsgroups gmane.comp.windows.dotnet.nant.user
Message-ID <[email protected]>
Hi,

On Fri, Mar 26, 2010 at 11:01 AM, Christopher Brandt
<[email protected]> wrote:
> I've found one more problem and solution to it but also have a puzzling
> situation.
>
> First the problem; on our build server we're running NAnt 0.86 and I'm
> trying to get things working with the net-3.5 target framework. One build
> was failing with an error:
>
> Unexpected attribute "if" on element <directory>.
>
> It took a while but I traced this to the nant.exe.config file. In the
> net-3.5 section, the tool-paths element has a set of directory elements and
> the first one (for the sdkInstall directory) has an 'if' attribute to guard
> against the possibility that and sdkInstallRoot was not found. This if
> attribute seems to work fine in the 0.90 build but not in 0.86. The solution
> is to remove that 'if' element as it is not there in the net-2.0 or net-1.1
> sections.
>
> Now the puzzle. On my build server we're running Windows SDK v6.0 and .Net
> Framework 3.5 32 bit, when I attempt to build with NAnt 0.90 I get an error
> complaining that AL.exe could not be started because the ALink.dll could not
> be found. On that server, the sdkInstallRoot\bin directory contains Al.exe
> but not ALink.dll. The installRoot\v3.5 has neither but
> installRoot\V2.0.50727 has both. So on that server it seems like NAnt 0.90
> is looking only in the first path and not the others.

I should have caught this before.  Windows SDK v6.0 is for .NET 3.0.
Not 3.5.    I bet that if SDK v6.1 or v7.0 is installed in that
machine, it would work properly.

In the meantime, I should remove the SDK v6.0 reference from
NAnt.exe.config since it is not for net-3.5 and I don't think NAnt
officially supports .NET 3.0.

>
> The plot thinkens...
>
> On my desktop I'm running NAnt 0.90 with Windows 7.0 SDK and .Net Framework
> 3.5 64 bit. In this set up I can successfully run the same build that fails
> on our build server. Here the sdkInstallRoot\bin directory contains AL.exe
> but not ALink.dll. The installRoot\v3.5 contains neither and
> installRoot\v2.0.50727 only contains ALink.dll. So on my desktop, where
> AL.exe and ALink.dll are not in the same folder NAnt 0.90 seems to be able
> to find both.
>
> What am I missing?

If I understand how this works correctly, NAnt is using al.exe and
alink.dll from the .NET 2.0.  The way that .NET 3.5 is setup is that
it is a collection of libraries that sits on top of .NET 2.0.  Since
the NAnt.exe.config file uses the .NET 2.0 for the 3.5 framework
assembly directory, I can only assume that NAnt is going using the
files in the .NET 2.0 directory.  If someone can better explain this,
please chime in...

>
> ---
> Chris.
>
> Continuous improvement is better than delayed perfection. - Mark Twain
>
> ------------------------------------------------------------------------------
> Download Intel&#174; Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> NAnt-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/nant-users
>
>



-- 
Thanks,
Ryan

------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.