[Mono-devel-list] MCS library referencing.

Vladimir Vukicevic vladimirv at gmail.com
Wed Jun 2 15:41:00 EDT 2004


On Wed, 02 Jun 2004 12:16:05 -0400, Todd Berman <tberman at sevenl.net> 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?

I noticed this as well, but I think mcs is doing the right thing here.
 I believe the only things it searches are for the given name, and the
given name with .dll appended; this goes along with other unix
compilers/linkers, where you don't have to specify .a or .so or
whichever.  mcs allows you to explicitly specify the .dll, so it's
still compatible with csc... csc doesn't allow for -pkg, and yet we
still have that.

    - Vlad



More information about the Mono-devel-list mailing list