2 |
本章內容
ü下載Mono
ü安裝Mono
ü配置XSP
2.1下載Mono
Mono可以安裝在Windows、Linux、Max OS X、FreeBSD等作業系統上。
Mono支持GNOME、KDE、Windows桌面環境。
由於Linux軟體包的依賴性,安裝Mono時,在一些Linux發行版上可能會有些問題,原因時你未安裝Mono運行所需要的第三方的軟體包,筆者在Slackware Linux下就遇到這樣的問題。
首先,你需要到Mono的官方網站上下載Mono的軟體包。你可以由多個途徑獲得Mono軟體包。
2.1.1編譯好的安裝包
直接到網址http://www.go-mono.com/download.htm下載發行版或者beta的mono軟體包。這裡提供了各種不同種類的正式發行版或階段性發行版,人們可以自由選擇所需要的類型。這裡所提供的安裝包一般都經過了測試,能正確的編譯和運行。有RedHat9.0、Fordra1.0、Fordra2.0、SUSE、debian等編譯好的二進制的安裝包,既然SUSE和Mono時一家了,Mono對SUSE的支持時相當的好。http://www.slackcare.com提供了Mono基本的編譯好的二進制安裝檔案,如果需要XSP的話還得下載原始碼編譯。安裝完成後如果啟動monodoc、MonoDevelop有錯誤,可能時因為沒有安裝mozilla-devel,到網上下載一個安裝上即可。至於其他的Linux發行版,如紅旗Linux4.0、4.1,可以嘗試下載針對Fordra1.0的RPM,最好下載原始碼進行編譯。
2.1.2日發行包
在 http://go-mono.com/daily/這個地址獲取 Mono 的日發行包。日發行包包括了每一天 Mono 項目的開發進展。共分為以下 3 種不同的類型:
ØMono: 這是一個可以進行編譯的運行時和類庫的原始碼包(包含了 C# 的所有二進制控制項)。只要你有一個 C 編譯器就可以編譯和安裝使用了。最新的版本可以直接通過http://go-mono.com/daily/mono-latest.tar.gz來下載。
ØMonoCharge: 包含了所有進行編譯過的 Mono 的 C# 組件和可執行程式。可以使用它來全面更新你已安裝的 Mono 類庫和工具。
最新版本可以直接通過http://go-mono.com/daily/monocharge-latest.tar.gz來下載。
ØMonoLite: MonoLite 包和 MonoCharge 包一樣,也提供了讓你更新 Mono 的能力,不過它只包含了最基本的核心類庫 corlib, System, System.Xml 和 C# 編譯器。
最新版本可以直接通過http://go-mono.com/daily/monolite-latest.tar.gz來下載。
2.1.3通過 CVS 伺服器獲取 Mono 源碼
Mono允許你匿名訪問他們的CVS伺服器,下載Mono的原始碼。
在 Linux 下訪問:
首先要確認你的系統上已經安裝了 CVS 客戶端軟體,如果沒有的話,可以到 http://www.cvshome.org/去下載。
在控制台下輸入如下命令:
export CVSROOT=:pserver:[email protected]:/mono cvs login (系統提示要輸入密碼,可以直接回車) cvs -z3 co mono
其中的 mono 為項目名稱,也可以換成別的項目,例如 mcs、libgdiplus、winelib 和 gtk-sharp 。然後就可以看到正在從伺服器上下載檔案, CVS 會自動在當前目錄下建立一個和伺服器上的目錄結構保持一致的項目檔案目錄。
在Windows下可以使用wincvs訪問Mono的CVS伺服器。
2.1.4CVS 快照
如果你不能直接訪問cvs伺服器(原因很多啦,沒裝cvs客戶端、不能直接網際網路,懶得區cvs伺服器下載等)、你可以下載原始碼的快照。Mono將每日的原始碼打包提供下載。
2.2安裝Mono
2.2.1 Windows等作業系統上的安裝
Mac OS X上的安裝請參照Mono網站上的安裝手冊。
在FreeBSD上,將Mono原始碼包解開,例如在/usr/ports/lang/mono,依次執行命令make、make install、make clean。
在Windows上安裝Mono,可以下載針對Windows的安裝檔案mono-1.0-win32-1.exe,運行,出現圖2.1.1。
圖2.2.1在Windows下安裝Mono
安裝完畢,需要將D:\Program Files\Mono-1.0\bin(安裝路徑)加到path中。或者執行以下D:\Program Files\Mono-1.0\bin資料夾下的setmonopath.bat檔案。在控制台下輸入mono可以查看mono的命令的參數,當然還有其他的工具,都可以在D:\Program Files\Mono-1.0\bin資料夾下找到,如mcs。
2.2.2 Linux上Mono原始碼的安裝
Mono 的分發包有兩種形式,一種是源碼包,需要手工進行編譯,另一種是二進制包,可以直接安裝。 源碼包的適用範圍比較廣,能夠適合幾乎所有的 Linux ,但是步驟比較麻煩,所需時間較長。相反,二進制包的安裝比較簡單,但是適用範圍比較窄,只能在某些特定的 Linux 系統下安裝,典型的有 RedHat Linux 的 RPM 安裝包、Debian Linux的deb安裝包和Slackware Linux的tgz安裝包。這些Linux發行版都提供了安裝包界面管理工具,可以方便的安裝。
你也可以從原始碼安裝。
假如你是下載的 Mono 的壓縮安裝包,可以輸入以下命令進行解壓縮:
tar zxfv mono-X.XX.tar.gz
其中 X.XX 是 Mono 的版本號。
解壓縮完成後,將會看到在當前目錄下的一個子目錄,名稱一般會是: mono-X.XX 。
進入該子目錄,輸入: ./configure
configure 程式將會配置 Mono 的 Makefile 檔案,為下一步編譯 Mono 做好準備。假如在此過程中出現了異常中斷,並且目錄中也沒有生成 Makefile 檔案,則需要根據系統提示找出出現錯誤的原因,一般可能是因為缺少某些編譯 Mono 所必須的軟體,例如假設你沒有安裝 Gnome X-Window 的話,則需要手動安裝 pkg-config 和 glib-2.0 ,這兩個軟體可以分別在 http://www.freedesktop.org/Software/pkgconfig和 ftp://ftp.gtk.org/處下載。
再輸入make,進行編譯。編譯時間依賴機器的性能。
編譯完成後,可以輸入 make install 來進行安裝,這個步驟會將 mono 的一些腳本和可執行程式複製到作業系統可以找得到的地方,默認情況是: /usr/local/bin 。
安裝完畢,你就可以在終端中測試你是否正確安裝了Mono了。
在終端中輸入mono –help,回車。
圖2.2.2 mono命令
如果能正確顯示mono命令,說明安裝正常。
MonoDevelop是一個mono的IDE開發工具,在終端中輸入MonoDevelop,啟動MonoDevelop(你也可以在桌面上為這個命令建立一個連結)。
monodoc是mono文檔的查看工具,類似微軟的MSDN。使用monodoc,你可以了解mono的各種幫助以及其他類庫的幫助信息。
圖2.2.3 MonoDevelop開發工具
圖2.2.4 monodoc
配置XSP
Mono提供了asp.net的實現,你可以通過XSP實現一個asp.net的伺服器,可以訪問aspx頁面和Web Services。
一些好事者已經將asp.net下的開源的項目移植到Mono上,如微軟的asp.net論壇。這種移植也相當的簡單,主要是資料庫連線方式的更改,因為在Linux下主要使用mysql、postgresql、Oracle等資料庫。
你可以直接安裝XSP和apache module的編譯好的安裝包,也可以直接從原始碼編譯,主要最好也安裝apache的module,這樣我們就可以利用apache優異的性能。
從原始碼編譯還是那幾個命令:./configure、make、make install。
執行make install之後,針對apache的module安裝到apache的相關目錄,並更新httpd.conf(apache的版本不同,此檔案的名稱可能有些改變)。
主要增加下面的內容:
LoadModule mono_module libexec/apache/libmod_mono.so
…
LoadModule mod_mono.c
…
下一步我們要增加一個目錄。在剛才我們編譯好的XSP原始碼目錄下,有個test目錄,將這個目錄copy到我們指定的目錄,比如放在/var/www/xsp目錄下。
在httpd.conf檔案中增加下面的語句:
Alias /demo “/var/www/xsp/test”
MonoApplication “/demo:/var/www/xsp/test”
;Directory /var/www/xsp/test;
SetHander mono
;IfModule mod_dir.c;
DirectoryIndex index.aspx
;/IfModule;
;/Directory;
修改完畢,重新啟動apache。
開發瀏覽器,訪問地址http://localhost/demo/。
圖2.3.1 XSP測試頁
這是XSP的測試頁面,包括伺服器端的組件測試和WebService測試。我們將在後面的章節詳細介紹它。
很多剛開始接觸Liunx的朋友在安裝軟體的時候,有種恐懼的心理,尤其是需要自己從原始碼編譯的軟體。原因在Windows下,只要輕點滑鼠,安裝精靈會幫助你完成整個程式的安裝。
其實,在Linux下,比如rpm格式的安裝包,安裝起來也很方便,因為象Redhat、Fordra都提供了Package管理工具,你可以方便的安裝卸載。Slackware下也有類似的工具,但linuxer習慣在終端中敲入rpm或者installpkg完成安裝。
對於下載的原始碼,一般來說,都經過幾個步驟./configure先進行配置,make進行編譯,make install 進行安裝。一般都有README檔案或者INSTALL檔案,對安裝方法進行了說明。
在Linux安裝軟體其實很方便。
前兩章主要對Mono的歷史和Mono的安裝進行了介紹,下面的章節我們將開始Mono之旅,從最簡單的“Hello World!”開始,一步一步進入的Mono的神奇世界,深入了解Mono的強大的功能。