程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 在Linux上運轉C#的辦法

在Linux上運轉C#的辦法

編輯:C#入門知識

在Linux上運轉C#的辦法。本站提示廣大學習愛好者:(在Linux上運轉C#的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是在Linux上運轉C#的辦法正文


本文實例講述了在Linux上運轉C#的辦法。分享給年夜家供年夜家參考。詳細辦法以下:

在任何一個平台(操作體系+硬件系統)上,編寫和運轉法式的三個最基本的需求是庫、編譯器/說明器、運轉情況。庫以類和辦法(函數)的情勢供給經常使用的例程,簡化年夜型法式的編寫。.NET框架也不破例,包括了很多類庫。別的,把法式轉換成可履行情勢和運轉履行文件時,編譯器和運轉情況是必弗成少的。Mono軟件包包括了.NET類庫的一部門、一個C#編譯器和.NET運轉情況CLR(Common Language Runtime,公共說話運轉時情況)。

Mono宣稱支撐Linux、Solaris、Free BSD和MS Windows;除Intel x86系列的CPU(486,各類Pentium等)以外,聽說還要支撐Sparc、PowerPC和StrongArm處置器。

上面就來看看若何在Linux上運轉Mono。

敕令行運用

先從Mono主頁(http://www.go-mono.com/)下載軟件,履行上面的敕令裝置一切RPM:
rpm -ivh *.rpm

裝置完成後,一切根本的靜態履行庫,包含System.Data.dll、System.dll、System.Drawing.dll、System.Web.dll和System.Xml.dll都被復制到/usr/lib下。接上去,在Linux文本編纂器中輸出上面的內容,把文件保留為HelloMono.cs:
class HelloMono
{
public static void Main(string[ ] args)
{ System.Console.WriteLine("Hello Mono");
}
}

履行上面的敕令編譯C#文件:
mcs HelloMono.cs

mcs是Mono的C#敕令行編譯器。與MS .NET SDK的csc編譯器類似,mcs也有許多敕令行選項。下面的敕令將生成可履行文件HelloMono.exe。留意這個履行文件不是Linux履行文件,而是一個.NET履行文件,或許說,這個文件的可履行代碼情勢是中央說話(IL,Intermediate Language)。要運轉這個履行文件,必需履行以下敕令:
mono HelloMono.exe
Linux掌握台大將顯示出"Hello Mono"。關於mcs和Mono的更多解釋,請履行man mcs或man mono參考其man文檔。

GUI運用

Mono不支撐Windows Forms,但在C#編程中可用GTK #編寫GUI。GTK #是GTK+圖形庫的C#支撐對象,可從http://gtk-sharp.sourceforge.Net/下載。下載完成後,先要裝置RPM:
rpm -Uvh *.rpm --nodeps

解開gtk-sharp-0.2.1.tar.gz:
tar -zxvf gtk-sharp-0.2.1.tar.gz
進入子目次gtk-sharp-0.2.1,履行:
./configure --prefix=/usr
make
make install

完成這一步調以後,從新啟動一次。與GTK#有關的一切靜態代碼模塊(gtk-sharp.dll、atk-sharp.dll、gdk-sharp.dll、glib-sharp.dll和pango-sharp.dll)都邑被復制到/usr/lib目次,編譯用GTK#制造GUI的C#法式時,必需經由過程-r參數援用它們。GTK#下載包中包括了幾個示例法式,如HelloWorld.cs、Menu.cs、ButtonApp.cs等。編譯這些文件的敕令以下:
mcs -r gtk-sharp -r glib-sharp HelloWorld.cs
mcs -r gtk-sharp -r glib-sharp -r System.Drawing Menu.cs
mcs -r gtk-sharp -r glib-sharp -r System.Drawing ButtonApp.cs

上面來看看若何經由過程-r選項援用後面各個.dll靜態模塊。履行startx敕令啟動X Window,進入終端窗口,再進入示例法式地點目次,履行上面的敕令分離運轉各個法式:
mono HelloWorld.exe
mono Menu.exe
mono ButtonApp.exe

Mono項目還在完美和成長當中,還沒有移植好全體.NET類。但不論如何,它對很多人來講將是一個好新聞。有關Mono C#類庫移植停頓的信息,感興致的同伙可以拜訪www.go-mono.com/class-status.html。

斟酌一個典范的辦事器/客戶機式.NET運用:終究用戶只與客戶端打交道,客戶端最好是便利的GUI運用,很多人還會願望應用熟習的Windows平台。然則,關於他們來講,辦事器端應用Windows照樣Linux完整有關。所以,辦事器端可以用帶有Mono的Linux結構,節儉了裝備公用Windows辦事器的投資。Mono也將為運用遷徙帶來便利。假如Mono可以或許順遂成長,Windows開辟者也將可以或許為Linux或其他非Windows平台開辟運用。假如如許的話,不久以後湧現一個相似Visual Studio .NET但收費或便宜的Linux開辟IDE也說不定。

但是,一切這一切能否可以或許成為實際,依附於Mono能否可以或許茁壯成長,也依附於Mono與Windows平台上的.NET框架兼容或類似水平。別的一些身分也很症結,例如Mono的機能、GUI的友愛水平等。

願望本文所述對年夜家的C#法式設計有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved