Fedora 13下源码编译Mono和MonoDevelop流程总结


Fedora提供的RPM版的Mono版本比较低,为了学习体验最新版,就自己编译了一遍,整体流程比较简单,这里做个笔记记录一下。其他的一些插件就根据需要自行安装吧,走完这个流程,其他的就是小意思啦。

以下安装的版本为目前最新版(2011.5.21) Mono 2.10.2 和 MonoDevelop 2.4.2

需要下载的文件列表如下:

  • Mono运行时:mono-2.10.2.tar.bz2
  • GTK Bind:gtk-sharp-2.12.10.tar.bz2
  • GNOME Bind:gnome-sharp-2.24.1.tar.bz2
  • Mono Addins:mono-addins-0.6.1.tar.bz2
  • GDI+的Linux移植版本:libgdiplus-2.10.tar.bz2
  • MonoDevelop:monodevelop-2.4.2.tar.bz2

可以从这里进行下载:
http://ftp.novell.com/pub/mono/sources/

  1. 安装Mono运行时
    tar -xvf mono-2.10.2.tar.bz2
    cd mono-2.10.2
    ./configure --prefix=/usr
    make 
    make install

整个过程应该不存在大的问题

  1. 由于MonoDevelop需要其他的一些依赖库,这些库在系统中没有默认安装,Mono运行时也没有直接提供,所以这里要手动安装

安装GDI+

tar -xvf libgdiplus-2.10.tar.bz2
cd libgdiplus-2.10
./configure --prefix=/usr
make
make install
  1. 安装GTK Bind

    tar -xvf gtk-sharp-2.12.10.tar.bz2
    cd gtk-sharp-2.12.10
    ./configure --prefix=/usr
    make 
    make install
  2. 安装GNOME Bind

安装目前版本的GNOME Bind的时候,由于版本更新有些不同步,所以直接编译会出现Mono.GetOptions.dll找不到的错误提示,这里需要注意修正以下Makefile文件

tar -xvf gnome-sharp-2.24.1.tar.bz2
cd gnome-sharp-2.24一 
./configure --prefix=/usr

Makefile文件生成之后,这里需要修改sample相关文件的Makefile

由于这里的Mono.GetOptions.dll被开发组重命名为Mono.Options.dll,但是GNOME Bind包还没有及时更新,所以回会出现找不到该dll的问题,考虑到该dll只是在测试程序TestXfer.exe中使用,影响不大,所以这里直接注释掉TestXfer.exe的生成和运行即可。

进入子目录sample/gnomevfs,打开其中的Makefile文件,将如下几行注释掉就可以了:

注释掉221行:

EXTRA_TARGET = TestXfer.exe

注释掉449和450行:

TestXfer.exe: $(srcdir)/TestXfer.cs $(assemblies)

$(CSC) /out:TestXfer.exe $(references) -r:Mono.GetOptions.dll $(srcdir)/TestXfer.cs

然后退出子目录,进入到父目录gtk-sharp-2.12.10,继续执行:

make
make install
  1. 安装Mono Addins

    tar -xvf mono-addins-0.6.1.tar.bz2
    cd mono-addins-0.6.1
    ./configure --prefix=/usr
    make
    make install
  2. 安装完成相关依赖之后,就可以开始安装Monoevelop了

    tar -xvf monodevelop-2.4.2.tar.bz2
    cd monodevelop-2.4.2
    ./configure --prefix=/usr
    make 
    make install

截张图过来:


文章作者: 2356
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 2356 !