Search code examples
c#dlldllimportgacstrongname

C# Build a strong named file with imported non strong name libraries


I have a problem when building my strong name file solution. I need it to have a strong name since i need to deploy it to the GAC. The problem is that one of my imported libraries doesn't have a strong name. When I build the solution I get this error code:

Assembly generation failed -- Referenced assembly 'MathNet.Numerics' does not have a strong name c:\visual studio 2013\Projects\Math\Math\CSC Math

So my question is. Is it possible to build a strong name dll when the solution contains imported non strong name dll:s? If so, how would one go about building a solution of this kind?

PS. I references the keyfile in the AssemblyInfo.cs file the following way

[assembly: AssemblyKeyFile("C:\\MyStrongKeys.snk")]

Solution

  • No, you can't reference an unsigned assembly from a strong nammed assembly.

    strong-named assemblies can only reference other strong-named assemblies.

    See why on MSDN : Strong-Nammed Assemblies (last paragraph).

    You'll have to sign the referenced assembly.