Linux操作系統(tǒng)環(huán)境建立編譯執(zhí)行
對(duì)大家推薦很好使用的Linux操作系統(tǒng),像讓大家對(duì)Linux操作系統(tǒng)有所了解,然后對(duì)Linux操作系統(tǒng)全面講解介紹,希望對(duì)大家有用Linux操作系統(tǒng)下MONO執(zhí)行C#程序的方法 。
***步環(huán)境(UBUNTU系統(tǒng)下)sudo apt-get install mono-gmcs mono
第二步建立example.csclass X {static void Main () {System.Console.Write("My first mono app worked!"n");}}
第三步編譯gmcs example.cs
第四步執(zhí)行./example.exe在Linux中使用C#(Fedora系統(tǒng)下)當(dāng)微軟啟動(dòng)它的.NET戰(zhàn)略時(shí),其中的一個(gè)目標(biāo)就是讓所制作的軟件運(yùn)行在多種不同的平臺(tái)上。Mono,一個(gè)開(kāi)源項(xiàng)目,能使.NET能在您的Linux操作系統(tǒng)上運(yùn)行。
Linux操作系統(tǒng)如果你和我一樣,既用Microsoft的技術(shù)工作,也喜歡用Linux操作系統(tǒng)工作,那么這個(gè)Mono就能幫助你我,你可以在這兩個(gè)平臺(tái)上都可以寫(xiě)C#程序。到www.go-mono.com 下載Mono的***安裝包。我看了一下,在我寫(xiě)這篇文章時(shí),該官方網(wǎng)上***的Stable版本時(shí)Mono 1.1.13.8 。
在安裝Mono前,你必須確定你是否有GIMP Toolkit,Drawing Kit和pkg-config。你可以在rpmfind.net上下載它們。建議下載***的版本,如果你的Linux操作系統(tǒng)上原有了這些軟件,你也可能需要升級(jí)它們。
下面安裝這些軟件:
# rpm -Uvh glib2-2.0.0-1.i386.rpm
# rpm -Uvh glib2-devel-2.0.0-1.i386.rpm
# rpm -Uvh pkgconfig-0.12.0-1.i386.rpm
接下來(lái)就是解壓Mono:
# tar -zxvf mono-1.1.13.8.tar.gz
接下來(lái):
# ./configure
# make
# make install
當(dāng)上面的都完成后,你的Linux操作系統(tǒng)就有了一個(gè)可以工作的Mono,它包括了Mono的C#編譯器,Mono的即時(shí)編譯器和mint(The Mono interpreter)。下面就可以寫(xiě)C#程序了。比如,嘿嘿,寫(xiě)個(gè)最有名的Hellow World程序:
class Hello {
static void Main() {
System.Console.WriteLine("Hello World");}}
呵呵,果然是經(jīng)典。C#程序必須以.cs做后綴名。輸入程序并保存它,比如保存為HelloWorld.cs然后編譯它:
# mcs Hello.cs
如果你寫(xiě)的程序都正確,那么這個(gè)命令會(huì)生成一個(gè)名叫HelloWorld.exe的MSIL文件,然后你就可以使用這個(gè)文件:
# mint HelloWorld.exe
Hello World
mint interprter有很多可以選擇的命令包括 --trace 和 --debug,這些對(duì)調(diào)試很有作用。當(dāng)你的程序已經(jīng)完成了,你可以在JIT編譯器上編譯了:
# mono HelloWorld.exe
Hello World
公共語(yǔ)言運(yùn)行庫(kù)提供了跨平臺(tái)的能力。.NET程序可以在任何安裝了CLR的系統(tǒng)上運(yùn)行。實(shí)際上,Mono的C#編譯器是在Windows平臺(tái)上用 Microsoft .NET Framework SDK編譯后再移到Linux平臺(tái)上的。你可以把在Windows平臺(tái)上編譯好的程序轉(zhuǎn)到Linux操作系統(tǒng)上并運(yùn)行它。
Mono還沒(méi)有完全實(shí)現(xiàn).NET Framework,但已經(jīng)足夠讓你運(yùn)行你想寫(xiě)的程序了。Linux操作系統(tǒng)開(kāi)源的東西一般進(jìn)化速度很快,也許很快就能完全滿(mǎn)足你的需求。
Linux操作系統(tǒng)順便提一下,在gtk-sharp.sourceforge.net上有個(gè)Gtk# 項(xiàng)目,它致力于給C#語(yǔ)言綁定gtk+ toolkit。它同時(shí)也致力于在Mono下提供和Windows.Forms兼容的庫(kù)。當(dāng)然,從Windows遷移到Linux畢竟是有困難的,讓我們關(guān)注它的進(jìn)展吧。
【編輯推薦】