linux操作系統(tǒng)安裝MONO執(zhí)行C#程序的詳解步驟
第一步 環(huán)境(UBUNTU系統(tǒng)下)
sudo apt-get install mono-gmcs mono
第二步 建立example.cs
class 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è)開源項(xiàng)目,能使.NET能在您的Linux操作系統(tǒng)上運(yùn)行。
如果你和我一樣,既用Microsoft的技術(shù)工作,也喜歡用Linux工作,那么這個(gè)Mono就能幫助你我,你可以在這兩個(gè)平臺(tái)上都可以寫C#程序。
到www.go-mono.com 下載Mono的最新安裝包。我看了一下,在我寫這篇文章時(shí),該官方網(wǎng)上最新的Stable版本時(shí)Mono 1.1.13.8 。
在安裝Mono前,你必須確定你是否有GIMP Toolkit,Drawing Kit和pkg-config。你可以在rpmfind.net上下載它們。建議下載最新的版本,如果你的Linux上原有了這些軟件,你也可能需要升級(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)。下面就可以寫C#程序了。比如,嘿嘿,寫個(gè)最有名的Hellow World程序:
class Hello {
static void Main() {
System.Console.WriteLine("Hello World");
}
}
呵呵,果然是經(jīng)典。C#程序必須以.cs做后綴名。輸入程序并保存它,比如保存為HelloWorld.cs然后編譯它:
# mcs Hello.cs
如果你寫的程序都正確,那么這個(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上并運(yùn)行它。
Mono還沒(méi)有完全實(shí)現(xiàn).NET Framework,但已經(jīng)足夠讓你運(yùn)行你想寫的程序了。開源的東西一般進(jìn)化速度很快,也許很快就能完全滿足你的需求。
順便提一下,在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)展吧。
相關(guān)文章
C#實(shí)現(xiàn)Winform鼠標(biāo)拖動(dòng)窗口大小時(shí)設(shè)定窗口最小尺寸的方法
這篇文章主要介紹了C#實(shí)現(xiàn)Winform鼠標(biāo)拖動(dòng)窗口大小時(shí)設(shè)定窗口最小尺寸的方法,涉及WinForm改變窗口大小時(shí)動(dòng)態(tài)判斷當(dāng)前窗口尺寸的相關(guān)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-11-11C#中Equals和GetHashCode使用及區(qū)別
這篇文章主要介紹了C#中Equals和GetHashCode使用及區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02C# 向Word中設(shè)置/更改文本方向的方法(兩種)
在一般情況下word中輸入的文字都是橫向的,今天小編給大家?guī)?lái)兩種方法來(lái)設(shè)置更改文本方向的方法,非常不錯(cuò),對(duì)c# word 更改文本方向的知識(shí)感興趣的朋友一起看看吧2016-08-08user32.dll 函數(shù)說(shuō)明小結(jié)
這篇文章主要介紹了user32.dll 函數(shù)說(shuō)明,需要的朋友可以參考下2018-06-06淺析C#中g(shù)oto跳轉(zhuǎn)語(yǔ)句的用法
在我們?nèi)粘9ぷ髦谐S玫腃#跳轉(zhuǎn)語(yǔ)句有break、continue、return,但是還有一個(gè)C#跳轉(zhuǎn)語(yǔ)句很多同學(xué)可能都比較的陌生就是goto,下面我們就來(lái)看看goto跳轉(zhuǎn)語(yǔ)句的用法吧2024-03-03