天天看點

mono和monodevelop源碼編譯安裝

之是以用源碼編譯的方式安裝mono和monodevelop,是因為通過yum安裝的mono不是最新版本,而且monodevelop不能建 asp.net MVC3的工程。

而且通過源碼安裝,可以進一步了解mono的各個項目之間的關系。

我用的Fedora16系統

下載下傳mono的最新源碼,github上的源碼編譯時總是報找不到 gmcs.exe的錯誤。

我下的是mono-2.11.3版

需要注意的是用root使用者來安裝,否則有錯誤。

monodevelop的源碼編譯安裝相當曲折,搞了好幾天。

有幾點需要注意:

在monodevelop的官網上下最新源碼,否則在./configure時會有找不到檔案的錯。

在安裝monodevelop之前,要先安裝一些依賴的包。(mono-addins,gtk-sharp,libglade2,gnome-sharp-2.0)

安裝完後,需要設定LD_LIBRARY_PATH這個環境變量

用root使用者來安裝

安裝monodevelop之前,按順序安裝一些依賴包:

(gtk-sharp  --> mono-addins --> libglade2--> gnome-sharp-2.0)

這些包在安裝時也會遇到各種問題,下面是我安裝時遇到的各種問題及解決方法,供參考。

以上的安裝順序是我總結出來的,沒有試驗過。

我安裝時并不知道上面的安裝順序,是直接安裝monodevelop,然後遇到問題再解決的。我的安裝順序如下:

1) 和mono同樣的網址下載下傳monodevelop的最新代碼。

此時報了一個錯誤如下:找不到 UNMANAGED_DEPENDENCIES_MONO

通過以下指令修複此錯誤:

再次執行:

此時報了一個錯誤如下:找不到 mono-addins

下載下傳mono-addins并安裝,

此時報了一個錯誤如下:找不到 gtk-sharp-2.0

下載下傳gtk-sharp并安裝,

gtk-sharp安裝成功後,接着安裝mono-addins

mono-addins安裝成功後,接着安裝monodevelop   

此時報了一個錯誤如下:找不到 glade-sharp-2.0

我不知道glade-sharp是什麼包,先安裝了libgdiplus

下載下傳libgdiplus并安裝,

make時報了一個錯誤如下:

解決辦法如下:

1. 運作./configure --prefix=/usr/local 之後,編輯 tests/Makefile 檔案

2. 在Makefile檔案130行位置,将   LIBS = -lpthread -lfontconfig

                            改為 LIBS = -lpthread -lfontconfig -lglib-2.0 -lX11

3. 再次運作 make 即可

接着安裝monodevelop  

仍然是錯誤:找不到 glade-sharp-2.0

利用yum 安裝libglade2-devel,mono源碼中沒找到這個包

知道這個包的名稱,也可以找相應的rpm來安裝。

安裝完libglade2後,重新安裝 gtk-sharp2,安裝方法上面已有。

接着,再次嘗試安裝 monodevelop:

此時報了一個錯誤如下:未安裝gnome-sharp-2.0

下載下傳 gnome-sharp-2.0 并安裝

雖然沒有報錯,但是提示缺少3個assmely: art-sharp.dll,gnomevfs-sharp.dll,gnome-sharp.dll

下面的兩個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 後,報出如下錯誤:

經過調查,

1.  原來是gnome-sharp版本太舊的原因,

    前面用的gnome-sharp-2.20.*用了Mono.GetOptions,更新至gnome-sharp-2.24.*

2.  注釋掉gnome-sharp-2.24.1/sample/gnomevfs/Makefile中關于 Mono.GetOptions的内容

此時會産生一些找不到 tests/UnitTests/Makefile.in 之類的錯誤。

經過調查,似乎是monodevelop 版本的問題,在monodevelop官網上下載下傳最新的代碼,

然後重新安裝,終于安裝成功。官網上最新版是3.0.3.4

安裝完後,monodevep卻無法啟動,錯誤如下:

将LD_LIBRARY_PATH加入到啟動的配置檔案中,即 ~/.bashrc

内容如下:

終于啟動成功,也有 aspnet-mvc3的工程了 ^_^

記錄下安裝過程的錯誤,也是友善以後遇到相同的錯誤可以知道怎麼解決。

大家在安裝過程中如果有什麼新的問題,歡迎交流。

本文轉自wang_yb部落格園部落格,原文連結:http://www.cnblogs.com/wang_yb/archive/2012/07/29/2613844.html,如需轉載請自行聯系原作者

繼續閱讀