[Mono-list] Choosing library to compile against

Peter Hultqvist phq at silentorbit.com
Thu Feb 21 13:46:06 UTC 2013

How can I force a project to compile using a specific project rather
than looking in the gac?

My application is using the Npgsql but because of a bug in the
distribution release I downloaded and compiled the source for it. It is
included in my solution as a project along my other code.
My projects is referencing the npgsql project in the same solution.

The distribution(Ubuntu 12.10) version pulled from the
mono-complete/mono-dev packages.

The big problem is that I get compile errors such as

error CS1502: The best overloaded method match for
`....Prepare(Npgsql.NpgsqlCommand)' has some invalid arguments
error CS1503: Argument `#1' cannot convert `Npgsql.NpgsqlCommand'
expression to type `Npgsql.NpgsqlCommand'

Some details: My solution has the npgsql project and two projects of my
own, A and B, both referencing the npgsql project. Prepare is defined in
project A and used in project B. Project A compiles fine and project B
is the one with the error above.

Is there any way to force the compiling process to use the version in
the solution instead of the one from the gac?
I thought I had already done that when I reference the solution project
rather than the package, is it perhaps a bug?

Same error comes up when compiling using xbuild.

The only workaround now is to remove the npgsql files from /usr/lib/mono
but that is something I rather not have to remember for every new install.

More information about the Mono-list mailing list