Hi,

On Fri, Mar 26, 2010 at 11:01 AM, Christopher Brandt
<xtopher.bra...@gmail.com> 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
> NAnt-users@lists.sourceforge.net
> 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
_______________________________________________
NAnt-users mailing list
NAnt-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users

Reply via email to