下面的两个dll对应如下库:(我是通过 yum找到的)
art-sharp.dll : libart_lgpl-devel
gnomevfs-sharp.dll: gnome-vfs2-devel
最后一个根据上面的提示,(对应如下库)
gnome-sharp.dll : libgnomecanvas, libgnome,
libgnomeui, libgnomeprint, libgnomeprintui, and
libpanelapplet(即gnome-panel-devel)
# make
make 后,报出如下错误:
====================================================================error CS0006: Metadata file `Mono.GetOptions.dll' could not be found====================================================================
经过调查,
1. 原来是gnome-sharp版本太旧的原因,
前面用的gnome-sharp-2.20.*用了Mono.GetOptions,更新至gnome-sharp-2.24.*
2. 注释掉gnome-sharp-2.24.1/sample/gnomevfs/Makefile中关于 Mono.GetOptions的内容
# tar jxvf gnome-sharp-2.24.1.tar.bz2 # cd gnome-sharp-2.24.0 # ./configure --prefix=/usr/local # make # make install
接着,再次尝试安装 monodevelop:
# ./configure --prefix=`pkg-config --variable=prefix mono`
此时会产生一些找不到 tests/UnitTests/Makefile.in 之类的错误。
经过调查,似乎是monodevelop 版本的问题,在monodevelop官网上下载最新的代码,
然后重新安装,终于安装成功。官网上最新版是3.0.3.4
# tar jxvf monodevelop-3.0.3.4.tar.bz2 # cd ../monodevelop-3.0.3.4 # ./configure --prefix=`pkg-config --variable=prefix mono` # make # make install
安装完后,monodevep却无法启动,错误如下:
====================================================================System.TypeInitializationException: An exception was thrown by the type initializer for Mono.Unix.Native.Syscall ---> System.DllNotFoundException: libMonoPosixHelper.so at (wrapper managed-to-native) Mono.Unix.Native.Syscall:_L_ctermid () at Mono.Unix.Native.Syscall..cctor () [0x00032] in /home/wangyb/downloads/mono/mono-2.11.3/mcs/class/Mono.Posix/Mono.Unix.Native/Syscall.cs:2599 --- End of inner exception stack trace --- at MonoDevelop.Core.LoggingService.RedirectOutputToFileUnix (FilePath logDirectory, System.String logName) [0x0001f] in /home/wangyb/downloads/mono/monodevelop-3.0.3.4/src/core/MonoDevelop.Core/MonoDevelop.Core/LoggingService.cs:177 at MonoDevelop.Core.LoggingService.RedirectOutputToLogFile () [0x00046] in /home/wangyb/downloads/mono/monodevelop-3.0.3.4/src/core/MonoDevelop.Core/MonoDevelop.Core/LoggingService.cs:140 FATAL ERROR [2012-07-29 07:59:49Z]: MonoDevelop failed to start. Some of the assemblies required to run MonoDevelop (for example gtk-sharp, gnome-sharp or gtkhtml-sharp) may not be properly installed in the GAC.System.TypeInitializationException: An exception was thrown by the type initializer for Gtk.Application ---> System.DllNotFoundException: glibsharpglue-2 at (wrapper managed-to-native) GLib.Thread:glibsharp_g_thread_supported () at GLib.Thread.get_Supported () [0x00000] in <filename unknown>:0 at Gtk.Application..cctor () [0x00000] in <filename unknown>:0 --- End of inner exception stack trace --- at MonoDevelop.Ide.IdeStartup.Run (MonoDevelop.Ide.MonoDevelopOptions options) [0x00085] in /home/wangyb/downloads/mono/monodevelop-3.0.3.4/src/core/MonoDevelop.Ide/MonoDevelop.Ide/IdeStartup.cs:95 at MonoDevelop.Ide.IdeStartup.Main (System.String[] args) [0x00058] in /home/wangyb/downloads/mono/monodevelop-3.0.3.4/src/core/MonoDevelop.Ide/MonoDevelop.Ide/IdeStartup.cs:503 ====================================================================
将LD_LIBRARY_PATH加入到启动的配置文件中,即 ~/.bashrc
内容如下:
# add mono LD_LIBRARY_PATH export LD_LIBRARY_PATH=/usr/local/lib
终于启动成功,也有 aspnet-mvc3的工程了 ^_^
3. 总结记录下安装过程的错误,也是方便以后遇到相同的错误可以知道怎么解决。
大家在安装过程中如果有什么新的问题,欢迎交流。