[Mono-list] Problem building NAnt on Mono/CVS

Jaroslaw Kowalski jaak@zd.com.pl
Thu, 26 Feb 2004 21:02:56 +0100


I've been trying to get nant to run (again) on mono/linux, but I keep
running into problems. They seem to be related to AppDomain.Unload(). I
don't know how to handle this myself, so I thought I'd ask for help here:

Steps to reproduce the problem:

1. Download latest NAnt nigtly build


2. Create a directory, enter it and unzip nant there

3. If you have mono installed in some weird place, open
"src/NAnt.Console/NAnt.Console.exe.config and update your paths accordingly.

4. Open NAnt.build and search for "01-01-2000" and change it to
"01/01/2000". (There's a bug #54721 for this case).

5. Run:

$ make clean
$ make

In my case it prints out:

   [attrib] Setting file attributes for 1 files to Normal.

** (bin/NAnt.exe:7986): WARNING **: Finalization of domain
TypeGatheringDomain timed out.


AssemblyInfo file '/opt/nant/nnn/src/CommonAssemblyInfo.cs' could not be
    Finalization of domain TypeGatheringDomain timed out.

6. Open "src/NAnt.DotNet/Tasks/AssemblyInfoTask.cs", locate
"AppDomain.Unload()" and comment it out

7. After you do:

$ make clean
$ make

this task passes without problems (but fails later, with similar errors).
This suggests that AppDomain.Unload() isn't working for some reason.

Is this a known bug?

My installation:

Fedora Core 1
Linux 2.4.22-1.2174.nptl
mono fully reinstalled from CVS 3 hours ago

Mono JIT compiler version 0.30.99, (C) 2002-2004 Novell, Inc and
Contributors. www.go-mono.com
        TLS:           NPTL
        GC:            Included Boehm (with typed GC)
        Globalization: ICU

BTW. NAnt includes an extensive suite of unit tests that make use of many
advanced CLR features. The tests are known to pass on .NET. It would be
great if the mono team could include them in your automated unit testing
process to detect regressions.

NAnt used to work on mono some time ago (last checked 3 months ago) but
something was changed and it no longer runs properly.