MonoFromSource

来自Ubuntu中文
跳到导航跳到搜索

通过源代码编译Mono

由于Ubutu/Debian的Mono包发布比较滞后,这一节可以帮你编译最新版的源代码来安装Mono。

这些介绍适用于Ubuntu 5.04 (Hoary Hedgehog), Ubuntu 5.10 以后版本的源里已经有了比较新的Mono。

安装前的准备

因为我们要编译源代码,所以需要做一些准备工作,还要安装Mono所依赖的包。

bash:~$ sudo apt-get install build-essential pkg-config libglib2.0-dev bison libcairo1-dev

现在我们需要建一个工作目录:

bash:~$ mkdir src
bash:~$ cd src

libgdiplus

可选 - 尽管libgdiplus不是必需的,但安装它后能提供更多的功能。

bash:~/src/$ sudo apt-get install libungif4-dev libjpeg62-dev libtiff4-dev

下载tar包:


bash:~/src/$ wget http://www.go-mono.com/sources/libgdiplus-1.1/libgdiplus-1.1.9.tar.gz

...解压:

bash:~/src/$ tar xzf libgdiplus-1.1.9.tar.gz
bash:~/src/$ cd libgdiplus-1.1.9

现在我们可以编译并安装了:

bash:~/src/libgdiplus-1.1.9/$ ./configure --prefix=/usr/local
bash:~/src/libgdiplus-1.1.9/$ make
bash:~/src/libgdiplus-1.1.9/$ sudo make install

然后测试一下安装的库是否可用 - 有很多种方法,这里仅提供一种:

bash:~/src/libgdiplus-1.1.9/$ sudo sh -c "echo /usr/local/lib >> /etc/ld.so.conf"
bash:~/src/libgdiplus-1.1.9/$ sudo /sbin/ldconfig

离开这个目录...

bash:-~/src/libgdiplus-1.1.9/$ cd ..

...接着进行下一步

Mono

编译Mono:

bash:~/src/$ wget http://www.go-mono.com/sources/mono-1.1/mono-1.1.9.tar.gz
bash:~/src/$ tar xzf mono-1.1.9.tar.gz
bash:~/src/$ cd mono-1.1.9
bash:~/src/mono-1.1.9/$ ./configure --prefix=/usr/local --with-preview=yes
bash:~/src/mono-1.1.9/$ make
bash:~/src/mono-1.1.9/$ sudo make install
bash:~/src/$ cd ..

你可以用下面的方法检测是否已装好:

bash:~/src/$ mono -V
Mono JIT compiler version 1.1.9, (C) 2002-2005 Novell, Inc and Contributors. www.mono-project.com
TLS:           normal
GC:            Included Boehm (with typed GC)
SIGSEGV      : normal
Globalization: normal

Gtk#

GTK#有两个版本:Gtk# - 1.x 和 2.x. 不同的应用程序需要不同的版本, 在Mono中可以同时安装两个版本而互不影响。

两者都依赖于 GNOME/GTK+ 开发库, 我们可以安装这些依赖包如下:

bash:~/src/$ sudo apt-get install libgnome-desktop-dev libgtkhtml3.2-dev

还有一些可选择的依赖,- 如果你需要的话可以安装:

bash:~/src/$ sudo apt-get install libgnomedb2-dev librsvg2-dev libvte-dev

安装完这些依赖后,编译可以继续进行。

1.x

bash:~/src/$ wget http://go-mono.com/sources/gtk-sharp/gtk-sharp-1.0.10.tar.gz
bash:~/src/$ tar xzf gtk-sharp-1.0.10.tar.gz
bash:~/src/$ cd gtk-sharp-1.0.10
bash:~/src/gtk-sharp-1.0.10/$ ./configure --prefix=/usr/local
bash:~/src/gtk-sharp-1.0.10/$ make
bash:~/src/gtk-sharp-1.0.10/$ sudo make install
bash:~/src/$ cd ..

你可以测试如下:

bash:~/src/$ sudo ldconfig
bash:~/src/$ mono gtk-sharp-1.0.10/sample/GtkDemo/GtkDemo.exe

2.x

Gtk# 2.x 有一个额外的依赖:

bash:~/src/$ sudo apt-get install libpanel-applet2-dev
bash:~/src/$ wget http://go-mono.com/sources/gtk-sharp-2.0/gtk-sharp-2.3.91.tar.gz
bash:~/src/$ tar xzf gtk-sharp-2.3.91.tar.gz
bash:~/src/$ cd gtk-sharp-2.3.91
bash:~/src/gtk-sharp-2.3.91/$ ./configure --prefix=/usr/local
bash:~/src/gtk-sharp-2.3.91/$ make
bash:~/src/gtk-sharp-2.3.91/$ sudo make install
bash:~/src/$ cd ..

你可以测试如下:

bash:~/src/$ sudo ldconfig
bash:~/src/$ mono gtk-sharp-2.3.91/sample/GtkDemo/GtkDemo.exe

小结

现在你拥有了具有所有功能的Mono/Gtk#开发环境,现在你可以编译/开发你自己的程序了!



文章来源:官方WIKI
翻译人员:madoldman
校对人员:
文章状态:翻译完成