[Mono-dev] Monodevelop & Gtk# 3

Federico Di Gregorio fog at dndg.it
Mon Oct 27 09:47:23 UTC 2014


On 26/10/2014 21:10, Marius Ungureanu wrote:
> Heya! It seems you have gtk-sharp 3 installed on the system.
> 
> Did you build it from sources? If so, grab gtk-sharp 2.12.2x and build it instead.
> 
> Арсен Шнурков <arsen.shnurkov at gmail.com> wrote:
> 
>> >Hi, i found your post
>> >https://mail.gnome.org/archives/commits-list/2013-October/msg04340.html
>> >
>> >and right now I an unable to build monodevelop 5.6.2.5
>> >this is full build log (sources from git):
>> >http://pastebin.calculate-linux.ru/ru/show/10192
>> >
>> >this is the first error:
>> >CSC: error CS1705: Assembly `gdk-sharp, Version=3.0.0.0,
>> >Culture=neutral, PublicKeyToken=35e10195dab3c99f' references
>> >`glib-sharp, Version=3.0.0.0, Culture=neutral,
>> >PublicKeyToken=35e10195dab3c99f' which has a higher version number
>> >than imported assembly `glib-sharp, Version=2.12.0.0, Culture=neutral,
>> >PublicKeyToken=35e10195dab3c99f'
>> >
>> >What to do to finish compilation?

The problem is that if you have both Gtk# 2 and Gtk# 3 xbuild prefers
the one with the highest version number. To compile MonoDevelop you
should install Gtk# 2 and _remove_ Gtk# 3. This patch to mono makes
xbuild always prefer the original version of the DLLs used in the
project (it's what I use to build MonoDevelop while having Gtk# 3
installed) but probably makes xbuild different from msbuild and won't be
integrated.

https://github.com/mono/mono/pull/1320

I guess that MonoDevelop .csproj doesn't set SpecificVersion because
Gtk# bumps its version number at every release and that would make
MonoDevelop unbuildable with new versions without changing the project.
IMHO the correct approach would be:

1) Set SpecificVersion to true in MD projects
2) Have Gtk# bump file version at every release but keep the assembly
version stable.

tl;dr uninstall Gtk# 3 and install Gtk# 2 to build.

federico

-- 
Federico Di Gregorio                         federico.digregorio at dndg.it
Di Nunzio & Di Gregorio srl                               http://dndg.it
           Purtroppo i creazionisti non si sono ancora estinti. -- vodka


More information about the Mono-devel-list mailing list