Everything should compile fine using NAnt 0.85 final. You can find the latest version at http://nant.sourceforge.net/ for targeting 3.5, it's recommended you use NAnt 0.68b2 nightly build (current version is 0.86.3075.0 from 02/06/2008 and can be downloaded from the said location). Anyway, the following are some useful tips if things go wrong for some reason. Where to start the build? ========================= Use the default.build in the root directory. It compiles everything in the right order, copies dependencies and so on. Simply type > nant This will create a Debug build of the project Use the following to build the trunk before attempting to load any solutions in your IDE for the first time, otherwise you may have reference problems: > nant rebuild, or > nant quick rebuild Database tests ============== If you have MS SQL Server installed (default instance) just create two databases: - test - test2 If not, and you want to run the database tests, you must set the connection string, dialect and driver through NAnt defines. Otherwise you can disable the tests (see below). The basic NHibernate settings can be set as NAnt arguments: - ar.dialect sets the NHibernate dialect > -D:ar.dialect=NHibernate.Dialect.MsSql2000Dialect - ar.connection.driver_class sets the driver > -D:ar.connection.driver_class=NHibernate.Driver.SqlClientDriver - ar.connection.connection_string{1,2} set the connection strings for the test and test2 databases > -D:ar.connection.connection_string.1="Data Source=.;Initial Catalog=test;Integrated Security=SSPI;" > -D:ar.connection.connection_string.2="Data Source=.;Initial Catalog=test2;Integrated Security=SSPI;" MSDTC ===== The Distributed Transaction Coordinator (msdtc) is required for some of the tests. If the service is not running by default on your machine, you'd need to start it to make tests pass so, simply start it before running nant, and stop it afterwards: > net start msdtc > nant ... > net stop msdtc Build options ============= Build option selectors ------------------------ Selectors are pseudo-targets, used to configure some part of the build. They need to be put before real build targets. debug: "nant debug build" will build the project in debug configuration" release: "nant release rebuild" will rebuild the entire project in release configuration quick: "nant quick build" will run the build without tests and generally will try to skip as much as possible to speed up the build. Running the tests ------------------- It's strongly advised to use the NUnit console test runner (nunit-console.exe) for running the tests. If you do not have NUnit installed the build script will fall back to using NAnt's task, which may or may not work for you. The build will search for nunit-console.exe on the path, in case you don't have it on the path you can specify it's location by setting the NAnt property -D:nunit-console=. Building without running the tests ------------------- > nant -D:common.testrunner.enabled=false Compiling a version not strongly signed --------------------------------------- > nant -D:sign=false Allowing partial trust ---------------------- > nant -D:assembly.allow-partially-trusted-callers=true Building the Castle MSI installer ---------------------- > nant installer You need to have installed the tools following for running this task: - Sandcastle http://www.microsoft.com/downloads/details.aspx?FamilyId=E82EA71D-DA89-42EE-A715-696E3A4873B2&displaylang=en - Sandcastle Help File Builder http://www.codeplex.com/SHFB - HTML Help 1.x compiler http://www.microsoft.com/downloads/details.aspx?familyid=00535334-c8a6-452f-9aa0-d597d16580cc&displaylang=en - WiX v3. http://wix.sourceforge.net/downloadv3.html More questions? =============== Please direct more questions to our devel mailing list or our forum at http://www.castleproject.org/