Assembly from GAC is not listed in Monodevelop'

2019-06-27 09:50发布

问题:

I am trying to port a small console application from Windows/.NET to Ubuntu/Mono. I have problems to add a reference to the mono version of NLog, which I added to the GAC.

Adding NLog.dll to the assembly was confirmed: Installed NLog.dll into the gac (/usr/lib/mono/gac)

I also find it in the GAC under: /usr/lib/mono/gac/NLog/2.0.0.0__5120e14c03d0593c

First I thought that it was due to my umask 027. But I changed files to 644 and directories to 755. The problem persists.

I am working with: Ubuntu 10.04, Monodevelop 2.2.1, Mono version 2.4.4 (Debian 2.4.4~svn151842-1ubuntu4), Nlog NLog2.mono2-Beta1

Do you have any idea?

回答1:

The Edit References dialog does not show assemblies registered in the GAC, but assemblies registered by packages using a .pc file. That's explained in the MonoDevelop FAQ.

The GAC is an assembly registry meant to be used at run-time, not at development time. If your application depends on another assembly, that assembly either has to be provided by a package (and advertised through a .pc file) or has to be bundled together with your application. In the later case, you can just use a project or 'file' reference to the assembly.