[Mono-dev] Using Mono Assemblies under terms of LGPL

Jonathan Pryor jonpryor at vt.edu
Tue Mar 2 16:12:57 EST 2010

On Tue, 2010-03-02 at 12:21 -0500, Jacques Beaurain wrote:
> ...  The issue that we face is
> that this assembly is not signed and we need to be able to place the
> assembly in the GAC of Microsoft Windows systems. What is the
> recommended way to handle this situation?
> In particular we are interested in the GNU.Gettext.dll assembly.

Er, what?  I don't see this assembly in my GAC (both the distro-provided
and my trunk installation), nor do I see a GNU.Gettext.dll assembly in
my source tree.  Where are you seeing this assembly?

To answer the original question, the answer is: don't.  For the love of
all that is good and holy, don't strong-name an assembly that isn't
strong-named and install it into the GAC.

Strong-naming is an indication that the API won't change in an
incompatible manner, possibly ever.  Upstream likely won't even know you
did this, will eventually break API, and cause all manner of pain.

(Case in point: Mono has two separate copies of SharpZipLib because they
changed their API in an incompatible manner.  I don't know who
strong-named it -- i.e. was it it Mono being bad, or were they screwing
things up -- but it's not a good situation to be in.)

YOU have sources and a compiler toolchain.  If you need a strong-named
assembly, fold it into your own assemblies and strong name *those*, so
that responsibility for maintaining API compatibility is clear.

 - Jon

More information about the Mono-devel-list mailing list