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還沒有完全實(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)只運(yùn)行單個(gè)實(shí)例應(yīng)用程序的方法(使用VB.Net的IsSingleInstance)
這篇文章主要介紹了C#實(shí)現(xiàn)只運(yùn)行單個(gè)實(shí)例應(yīng)用程序的方法,本文使用的是VB.Net的IsSingleInstance方法實(shí)現(xiàn),優(yōu)于Mutex 和 Process 這兩種只運(yùn)行單個(gè)應(yīng)用程序?qū)嵗姆椒?需要的朋友可以參考下2014-07-07
C#利用Openxml讀取Excel數(shù)據(jù)實(shí)例
這篇文章主要介紹了C#利用Openxml讀取Excel數(shù)據(jù)的方法,包括使用中的注意點(diǎn)分析及疑難探討,需要的朋友可以參考下2014-09-09
在類庫(kù)或winform項(xiàng)目中打開另一個(gè)winform項(xiàng)目窗體的方法
這篇文章主要介紹了在類庫(kù)或winform項(xiàng)目中打開另一個(gè)winform項(xiàng)目窗體的方法,可以實(shí)現(xiàn)Winform項(xiàng)目間窗體的調(diào)用,在進(jìn)行Winform項(xiàng)目開發(fā)中非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-11-11
關(guān)于C#連接SQL Server時(shí)提示用戶登錄失敗的解決方法
在用C#開發(fā)windows端程序并連接SQL Server時(shí)有可能會(huì)遇到數(shù)據(jù)庫(kù)登錄失敗的問題,下面小編給大家?guī)?lái)了C#連接SQL Server時(shí)提示用戶登錄失敗的解決方法,感興趣的朋友一起看看吧2021-11-11
C#使用System.Net.Mail類實(shí)現(xiàn)郵件發(fā)送
這篇文章介紹了C#使用System.Net.Mail類實(shí)現(xiàn)郵件發(fā)送的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
C#和.NET生成和使用異步流的方法實(shí)現(xiàn)
異步流可以簡(jiǎn)化異步文件的讀取、寫入和處理,本文主要介紹了C#和.NET生成和使用異步流的方法實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-03-03

