Hello Lex, It turns out a SharpZipLib binary was already in Gendarme's SVN (for the WIX packager project). The csproj for Gendarme.Rules.Portability.dll was updated to refer to that file (r158788). That fixes your issue #5 and that's one step less to build Gendarme from scratch on Windows.
I got another idea for nunit... but its not as easy so it will take a bit more time. Updated instructions will follow. Sebastien On May 10, 11:41 pm, Lex Li - MSFT <[email protected]> wrote: > Hi Sebastien, > > Thanks for your reply and clarification. > > A wiki link onhttp://www.mono-project.com/Gendarmefor how to build > Gendarme on Windows is greatly appreciated :) as it is more visible > than README.vsnet. > > Regards, > > Lex > > On May 11, 8:05 am, Sebastien Pouliot <[email protected]> > wrote: > > > > > Hello! > > > On Sun, 2010-05-09 at 22:28 -0700, Lex Li - MSFT wrote: > > > > It is really a pain to check out Gendarme via svn, and compile it on > > > Windows with Visual Studio 2010/.NET 4. Hope anyone can make the > > > process smoother in the future. > > > > 1. Check out mono-tools, from > > > svn://anonsvn.mono-project.com/source/trunk/mono-tools > > > to a folder such as d:\mono\mono-tools > > > 2. Check out mcs, from svn://anonsvn.mono-project.com/source/trunk/mcs > > > to the same folder, d:\mono\mcs > > > 3. Install NUnit 2.4.3 fromhttp://nunit.org/index.php?p=download. > > > 4. Download SharpZipLib > > > fromhttp://www.icsharpcode.net/opensource/sharpziplib/Download.aspx > > > and extract the net-2.0 dll. > > > 5. Remove Post-Build event from gendarme.csproj. > > > 6. Fix SharpZipLib reference for Gendarme.Rules.Portability.csproj to > > > the one we got in step 4. > > > > Issue 1: > > > Is it possible that we only check out Gendarme and its dependencies > > > instead of using step 1 and 2 to check out so many things? > > > Not sure. You'd like less steps (not easy) ? > > > or do you find 'mcs' huge to check out ? > > > IIRC* you only need Mono.Cecil and the strongname key from mcs. Other > > things can be found elsewhere. > > > svn://anonsvn.mono-project.com/source/trunk/mcs/class/Mono.Cecil > > svn://anonsvn.mono-project.com/source/trunk/mcs/class/mono.snk > > > > Issue 2: > > > Mono.Cecil.Pdb project is missing. It is not in mono-tools or mcs. > > > Where can I find it? > > > It reside under /cecil/pdb on svn, i.e. > > svn://anonsvn.mono-project.com/source/trunk/cecil/pdb > > > It is not part of /mcs because it cannot be compiled outside Windows > > (and only works on Windows). > > > > If it is no more necessary, please remove it from > > > the gendarme-win.sln :) > > > Gendarme will work without Mono.Cecil.Pdb.dll (i.e. without PDB > > support). However some rules won't work, or perform as well, without the > > ability to read debugging symbols (e.g. variable names). > > > > Issue 3: > > > NUnit 2.4 is available in msc, but not use in gendarme-win.sln. If we > > > should not use the NUnit in mcs, please find a way to include the > > > dependency somewhere to make gendarme-win.sln work instead of assuming > > > NUnit is installed in step 3. > > > There are several reasons. Skipping historical ones it does allow you > > not to entirely checkout (and update) /mcs from SVN. It also avoid > > building all the nunit assemblies from source. > > > For myself, when using Windows, I want a version of nunit compatible > > with the latest TestDriven.Net. > > > > Issue 4: > > > How to fix Post-Build event of gendarme.csproj? > > > It should work (i.e. no need to fix it). It copies from files (e.g. > > rules.xml) into the right places (for the console runner). > > > Now it likely failed for you because it also copy Mono.Cecil.Pdb.dll > > (which you have not build) since it is loaded dynamically (there's no > > reference to the assembly). > > > > Issue 5: > > > Gendarme.Rules.Portability.csproj searched SharpZipLib under mcs. I > > > have no idea how to fix the reference except changing it to a valid > > > one. > > > The file is also available from the "Files" section of the Google group. > > Maybe it should be more visible ? > > > OTOH did you see the README.vsnet file ? It does include some, but not > > all, answers to your questions. > > > > I started to love Gendarme better, as finally I can build it on > > > Windows and start to write my own rules. > > > Great :) > > > Thanks > > Sebastien > > > * As to make the experience a bit easier in the future I'll add a wiki > > page for building on Windows, update the README.vsnet and add links from > > the Gendarme developers FAQ. I'll post the link once ready... > > > -- > > You received this message because you are subscribed to the Google Groups > > "Gendarme" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]. > > For more options, visit this group > > athttp://groups.google.com/group/gendarme?hl=en. > > -- > You received this message because you are subscribed to the Google Groups > "Gendarme" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group > athttp://groups.google.com/group/gendarme?hl=en. -- You received this message because you are subscribed to the Google Groups "Gendarme" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/gendarme?hl=en.

