[Mono-devel-list] MCS library referencing.

Francisco T. Martinez martinf at mfconsulting.com
Wed Jun 2 14:09:14 EDT 2004

Todd Berman wrote:

> Currently, mcs allows you to do two things that csc does not wrt 
> library referencing on the commandline.
> The first is:
> mcs test.cs -r:System.Web
> will compile successfully, where as the equivalent csc line gives you 
> an CS0006: Metadata file 'System.Web' could not be found.
> This same error is seen in other places as well, where the .dll is 
> left off the commandline. MCS attempts to be smart (with good results) 
> and appends a .dll for you if it needs to.
> It seems like we need to remove those checks, and require .dll on the 
> end. This is very much similar to the reason the /package stuff exists 
> in mcs. When compiling, you are supposed to compile against a specific 
> assembly file, not against something abstract.
> Any thoughts?
> --Todd
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list

I am all for the more strict behavior of mcs when it comes to 
references.  I also stand for the closest "mirror set" of command line 
arguments and functionality between csc.exe and mcs.exe whenever possible..

I write tools that create makefiles and other constructs from the 
information that is contained in the project and workspace files that 
exist in MS Visual Studio, #Develop and MonoDevelop.  One of the 
challenges that are confronted by authors of such tools is that there 
are times when the project file may not be descriptive enough to know 
what version of a referenced assembly is being use (like csproj files in 

So I have been considering trying to do some sort of  a match based on 
the name and "hint path" of the referenced assembly and match in the GAC 
for the entry when creating MonoDevelop and #develop projects from a 
source Microsoft Visual Studio Project.

I also want us to work with Mono related tools and solutions that can be 
used or invoked in the same fashion regardless of the Mono platform 
(Mac, Windows, Linux, etc).   These are just thoughts but I intend to 
add some of the functionality mentioned above within the coming days to 
prj2make-sharp and to prj2make-sharp-lib (the addin that currently does 
the import of Visual Studio projects in MonoDevelop).

Sorry for the previous incomplete message earlier.  It was a slip

More information about the Mono-devel-list mailing list