Ubuntu 安装Mono2.0和MonoDevelop的磨难记

使用Ubuntu有一段时间了,对于做C#开发的人来说,Mono让我们看到了在linux下使用C#看到希望。我使用的是Ubuntu 8.10 默认安装了Mono1.9.1但是Mono2.0.1发布带来了更多新特性(仅相对于Mono来说)。但是没有官方的安装源,只能下来代码自己编译,相对于Windows linux对于我来说还是太陌生很多不明白的地方,但是这难不倒我们做程序员的,看ReadMe 查Google反正,要把你搞定为止,编译Mono 2.0.1非常顺利

sudo apt-get build-dep mono//安装一些必须的包,以免出错

./configure --prefix=/usr/local
make

sudo make install

几分钟的编译过程,很顺利,完成后在终端输入mono -V

 

Mono JIT compiler version 2.0.1 (tarball)
Copyright (C) 2002-2008 Novell, Inc and Contributors. www.mono-project.com
    TLS:           __thread
    GC:            Included Boehm (with typed GC)
    SIGSEGV:       altstack
    Notifications: epoll
    Architecture:  x86
    Disabled:      none

安装完成!好像没有什么困难的

下面装MonoDevelop才是磨难的开始,我从SVN取回MonoDevelop的代码,

直接./configure 这过程序也提示我确少几个库,这个按他的提示,在新立得里搜过一下,
装上,能过,但在make过程中缺不的文件就相当郁闷了,一开始,报缺Mono-addins的程序集,
这个也好办,下载下来,编译通过把编译出来的所有文件复制到monodevelp的bin目录下,
再一次make,好了这个问题就没有了,接下来说缺monodoc 2.0下用类似办法解决,
再一次make 这次缺gtk-sharp 

not be loaded:

> Assembly: gtk-sharp (assemblyref_index=1)
> Version: 2.12.0.0
> Public Key: 35e10195dab3c99f
> System error: Unknown error: 0
我明明编译安装了Gtk# 2.8Monodevelop的网页上也说需要2.8怎么这里要2.12版本的呢,
在google.里好多人有和我一样的问题
但都没有好的解决方案,我用
gacutil -l |grep gtk-sharp
gtk-sharp, Version=2.8.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f
也证明我的GAC里有gtk-sharp 2.8 这个问题折腾了我好久,最后,用了一个我自己也不太喜欢的办法,

我打开原来,mono1.9.1的gac文件夹, 把里的他里面有2.12版本的dll,
我全部复制到新的mono的gac文件夹里。编译还真的全通过了
直接make run 能运行monodevelop,但心里总有点
不爽,不知道这里的各位大大,有没有什么好的完美的解决方案,

 

posted @ 2008-12-12 08:39  无心之柳.NET  阅读(7585)  评论(29编辑  收藏  举报