views:

47

answers:

1

I am using MonoDevelop 2.2 from the Debian testing repository. I have installed the addins for GTK support, for version 2.8 and 2.10. When I compile my solution, I get warnings saying
Warning: Assembly 'glade-sharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f' not found. Make sure that the assembly exists in disk. If the reference is required to build the project you may get compilation errors. (ProCos)

The warning is perfectly alright, because the installed libraries do not offer V2.10 of glade-sharp. So I open the reference dialog, remove the reference and insert a reference to V2.8 of glade-sharp (which does exist). Close the reference dialog and recompile. And bang, same warning and the reference has been changed back to V2.10.

Anybody have any ideas how to fix this? Or is this a known bug in that version of MonoDevelop?

A: 

If you're using the GTK version support, all the GTK-related assemblies should have the same version. I suspect that if gtk-sharp.dll is 2.10, then MD will "fix" glade-sharp to 2.10 too. In project options is a dropdown for picking the GTK version; using this will update all GTK assemblies to a specific version.

Note also that you can use the project pad to set a reference to not require a specific version.

I suggest trying MD 2.4, and if it's still an issue, please file a bug report.

mhutch
Last time I tried to compile monodevelop and all the libraries from source, it took me several days to get it to work. I installed all of this from the Debian testing repo. I wonder what happened to the glade-sharp library of the relevant version. Plus: I tried setting this option, it doesn't work. Every time I look at it, it is unset, no matter how often I set it. So tell me, how are my chances of compiling without any troubles nowadays?
wolfgangsz
Hmm, digging around with this I find that I have /usr/lib/cli/glade-sharp-2.0/libgladesharpglue-2.so, which, according to various policy files, should be recognized as the library representing glade-sharp 2.10. Could you maybe point out which links and policies need to be in place to make this work?
wolfgangsz
Firstly, Mono 2.4+ requires Mono 2.6+. It's not hard to build, but I'd recommend packages. There *are* packages for both in Debian Experimental. Building from source isn't hard f you If you do build from source, do a parallel environment installation: http://www.mono-project.com/Parallel_Mono_Environments, http://mjhutchinson.com/journal/2007/11/08/how_not_break_mono
mhutch
libgladesharpglue-2.so is an implementation detail of glade-sharp native code used to access libglade. Something to watch out for on Debian is that Debian breaks up Mono packages into lots of tiny, tiny packages, e.g. libglade2.0-cil - but glade-sharp is actually part of GTK# - so developers on Debian people often find they are missing things that usually would be expected to exist together. Your "real" GTK# should be v 2.12, i.e. also Glade# 2.12.
mhutch
mhutch