欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
Mono
小 (→图集) |
小 (→项目) |
||
(未显示2个用户的57个中间版本) | |||
第1行: | 第1行: | ||
{{SeeWikipedia|Mono (software)}} | {{SeeWikipedia|Mono (software)}} | ||
+ | |||
+ | [[文件:mono-logo.png|right|Mono]] | ||
+ | |||
+ | Mono | ||
+ | |||
+ | ==简介== | ||
+ | Mono 是 ECMA CLI, C# 和 [[.NET]] 的开源实现,采用 MIT 许可协议。 | ||
Mono是一个由Novell公司主持的开源(GPL、LGPL、MIT X11、MPL)项目。该项目的目标是创建一系列符合ECMA标准(Ecma-334和Ecma-335)的.NET工具,包括C#编译器和共通语言执行平台。与微软的.NET Framework不同,Mono项目不仅可以运行于Windows系统上,还可以运行于Linux,FreeBSD,Unix,Mac OS X和Solaris。 | Mono是一个由Novell公司主持的开源(GPL、LGPL、MIT X11、MPL)项目。该项目的目标是创建一系列符合ECMA标准(Ecma-334和Ecma-335)的.NET工具,包括C#编译器和共通语言执行平台。与微软的.NET Framework不同,Mono项目不仅可以运行于Windows系统上,还可以运行于Linux,FreeBSD,Unix,Mac OS X和Solaris。 | ||
Mono IDE: [[MonoDevelop]],单元测试:[[NUnit]] | Mono IDE: [[MonoDevelop]],单元测试:[[NUnit]] | ||
+ | |||
+ | ==功能== | ||
+ | |||
+ | ==规范实现== | ||
+ | *[https://github.com/mono/mono Mono open source ECMA CLI, C# and .NET implementation. ] | ||
+ | *[https://github.com/mono/mono/tree/master/mcs/mcs/ Mono C# compiler sources] | ||
+ | *[https://www.mono-project.com/news/2018/09/11/csharp-jit/ Writing a JIT Compiler in C#] | ||
+ | |||
+ | ==版本== | ||
+ | *5.4 | ||
+ | *5.2 | ||
+ | *5.0 | ||
+ | *4.0 | ||
==兼容性== | ==兼容性== | ||
第25行: | 第45行: | ||
[http://www.mono-project.com/Compatibility 其它版本和部分实现、未实现功能 >>>] | [http://www.mono-project.com/Compatibility 其它版本和部分实现、未实现功能 >>>] | ||
+ | |||
+ | ==macOS== | ||
+ | 下载[http://www.mono-project.com/docs/getting-started/install/mac/ 安装包]或 | ||
+ | brew install autoconf automake libtool pkg-config cmake | ||
+ | brew install mono | ||
+ | brew upgrade mono | ||
+ | |||
==Debian== | ==Debian== | ||
apt-get install mono-2.0-devel // on Lenny (5.0). | apt-get install mono-2.0-devel // on Lenny (5.0). | ||
第30行: | 第57行: | ||
apt-get install mono-complete // complete Mono on Squeeze (6.0), Wheezy (testing), Sid (unstable), or Experimental. | apt-get install mono-complete // complete Mono on Squeeze (6.0), Wheezy (testing), Sid (unstable), or Experimental. | ||
mono-csc -help | mono-csc -help | ||
+ | |||
+ | apt-get install openssh-server //安装oen ssh远程管理 | ||
+ | apt-get install apache2 //安装apache | ||
+ | apt-get install mono-gmcs mono-xsp2 libapache2-mod-mono mono-apache-server2 //安装mono | ||
+ | a2enmod mod_mono | ||
+ | //命令会被打断 手动运行dpkg --configure -a 纠正问题 | ||
+ | vim /etc/apache2/mods-available/mod_mono.conf //配置.net引擎目录 | ||
+ | AddType appliction/x-asp-net .aspx .ashx .asmx .ascx .asax .config .ascx .axd | ||
+ | DirectoryIndex index.aspx | ||
+ | MonoAutoApplication enable | ||
+ | MonoServerPath "/usr/bin/mod-mono-server2" | ||
+ | |||
+ | Include /etc/mono-server2/mono-server2-hosts.conf | ||
+ | /etc/init.d/apache2 resuart //重启apache | ||
+ | |||
+ | *[http://www.debianadmin.com/running-aspnet-applications-in-debian-and-ubuntu-using-xsp-and-mono.html Running ASP.NET Applications in Debian and Ubuntu using XSP and Mono] | ||
+ | *[http://mono-project.com/Guide:_Porting_ASP.NET_Applications Porting ASP.NET Applications] | ||
+ | |||
+ | ==Windows== | ||
+ | 在 Windows、Windows Server 上安装 Mono、替换 IIS 6、IIS 7、IIS 8。 | ||
==Apache== | ==Apache== | ||
− | + | [[ASP.NET]] 4.0 | |
+ | |||
+ | ASP.NET 3.5 | ||
+ | |||
+ | [http://www.mono-project.com/ASP.NET Mono 实现了 ASP.NET 2.0, ASP.NET MVC and ASP.NET AJAX] | ||
通过[http://mono-project.com/Mod_mono mod_mono]运行在Apache Server上 | 通过[http://mono-project.com/Mod_mono mod_mono]运行在Apache Server上 | ||
− | apt-get install mono-apache-server2 asp. | + | apt-get install mono-apache-server2 asp.net-examples libapache2-mod-mono |
vim /etc/apache2/httpd.conf | vim /etc/apache2/httpd.conf | ||
Alias /webmsg "/var/www/webmsg" | Alias /webmsg "/var/www/webmsg" | ||
第45行: | 第96行: | ||
http://localhost/webmsg/Login.aspx | http://localhost/webmsg/Login.aspx | ||
− | + | ===XSP=== | |
+ | apt-get install mono-xsp2 mono-xsp2-base asp.net-examples | ||
+ | /usr/bin/mono /usr/lib/mono/2.0/xsp2.exe --port 8082 --address 0.0.0.0 --appconfigdir /etc/xsp2 --nonstop | ||
+ | http://192.168.1.100:8082/samples/ | ||
− | + | ==Nginx== | |
+ | apt-get install nginx | ||
+ | apt-get install mono-fastcgi-server4 | ||
+ | fastcgi-mono-server4 /version | ||
+ | fastcgi-mono-server4.exe 2.10.0.0 | ||
+ | (c) 2007 Brian Nickel | ||
+ | FastCGI Backend for XSP | ||
+ | fastcgi-mono-server4 /applications=/:/web/aspx /socket=tcp:192.168.1.131:9000 & | ||
+ | |||
+ | Nginx配置 | ||
+ | server { | ||
+ | listen 80; | ||
+ | server_name 192.168.1.131; | ||
+ | access_log /var/log/nginx/192.168.1.131.access.log; | ||
+ | |||
+ | location / { | ||
+ | root /web/aspx; | ||
+ | index index.html index.htm default.aspx Default.aspx; | ||
+ | fastcgi_index Default.aspx; | ||
+ | fastcgi_pass 192.168.1.131:9000; | ||
+ | include /etc/nginx/fastcgi_params; | ||
+ | } | ||
+ | } | ||
− | |||
在[[Nginx]]运行 [http://mono-project.com/FastCGI_Nginx ASP.NET 和 ASP.NET MVC web 应用] | 在[[Nginx]]运行 [http://mono-project.com/FastCGI_Nginx ASP.NET 和 ASP.NET MVC web 应用] | ||
==Android== | ==Android== | ||
+ | [[Xamarin]].Android | ||
[[文件:mono-android.png|right]] | [[文件:mono-android.png|right]] | ||
*[http://xamarin.com/monoforandroid Mono for Android] | *[http://xamarin.com/monoforandroid Mono for Android] | ||
*[http://www.suse.com/products/mono/features/android.html Mono for Android] | *[http://www.suse.com/products/mono/features/android.html Mono for Android] | ||
+ | *[https://github.com/xamarin/XobotOS XobotOS] - [[Android]] ported to [[C Sharp|C#]], porting Android 4.0 from Java/Dalvik to C#. | ||
==iOS== | ==iOS== | ||
+ | [[Xamarin]].iOS | ||
[[文件:mono-ios.png|right]] | [[文件:mono-ios.png|right]] | ||
*[http://xamarin.com/monotouch MonoTouch] | *[http://xamarin.com/monotouch MonoTouch] | ||
*[http://www.suse.com/products/mono/features/monotouch.html MonoTouch for Apple iPad] | *[http://www.suse.com/products/mono/features/monotouch.html MonoTouch for Apple iPad] | ||
− | == | + | ==MoMA== |
+ | [http://www.mono-project.com/MoMA Mono Migration Analyzer (MoMA)] | ||
+ | |||
+ | ==PostgreSQL== | ||
+ | 推荐在 [[.NET]] 和 [[Mono]] 上 使用 [[Npgsql]] | ||
+ | *[http://mono-project.com/PostgreSQL PostgreSQL on Mono] | ||
+ | |||
+ | ==项目== | ||
+ | *[https://github.com/Unity-Technologies/mono Unity's Fork] of Mono [[Unity]] | ||
+ | *[[Xamarin]] | ||
+ | *[[MonoDevelop]] | ||
*[[MonoXNA]] | *[[MonoXNA]] | ||
*[[MonoGame]] | *[[MonoGame]] | ||
+ | *[[CocosSharp]] | ||
+ | *[[Moonlight]] | ||
*[[ServiceStack]] | *[[ServiceStack]] | ||
*[[IKVM.NET]] | *[[IKVM.NET]] | ||
+ | *[[OpenRA]] | ||
+ | *[[KeePass]] | ||
+ | *[[Pinta]] | ||
+ | *[[Banshee]] | ||
+ | *[https://github.com/mono/xwt XWT] cross-platform UI toolkit, using [[GtkSharp|Gtk#]]. | ||
+ | *[https://github.com/mono/CppSharp CppSharp] | ||
+ | *[https://www.mono-project.com/news/2019/02/13/plastic-scm-a-full-version-control-stack-built-with-mono/ Plastic SCM: A Full Version Control Stack built with Mono] [https://www.plasticscm.com/ Plastic SCM] | ||
==Code== | ==Code== | ||
+ | *[https://github.com/mono/mono Mono @ GitHub] | ||
*[http://download.mono-project.com/sources/ Mono源代码下载] | *[http://download.mono-project.com/sources/ Mono源代码下载] | ||
+ | |||
+ | ==LLVM== | ||
+ | *[http://www.mono-project.com/docs/advanced/mono-llvm/ Mono LLVM] [http://www.mono-project.com/docs/advanced/runtime/docs/llvm-backend/ LLVM Backend] | ||
+ | *[https://github.com/mono/llvm Mono LLVM @ GitHub] | ||
==图集== | ==图集== | ||
<gallery widths=100px heights=100px perrow=6> | <gallery widths=100px heights=100px perrow=6> | ||
+ | image:simplified-mono-architecture.png|Mono架构 | ||
+ | Image:Cross-Platform-Mobile-Development-with-CSharp-and-DotNet.png|跨平台 | ||
+ | Image:xamarin-cross-platform-conceptual-architecture.png|Xamarin跨平台 | ||
Image:monotouch-for-ios.png|iOS | Image:monotouch-for-ios.png|iOS | ||
Image:mono-for-android.png|Android | Image:mono-for-android.png|Android | ||
第78行: | 第183行: | ||
Image:mod-mono-basic-setup.png|mod_mono | Image:mod-mono-basic-setup.png|mod_mono | ||
Image:mod-mono-multiple-servers.png|mod_mono多服务器 | Image:mod-mono-multiple-servers.png|mod_mono多服务器 | ||
+ | image:monotouch-in-app-purchase.png|App内付费 | ||
+ | image:designing-a-mobile-game-technology-stack.jpg|移动游戏框架 | ||
</gallery> | </gallery> | ||
第84行: | 第191行: | ||
*[https://github.com/mono Mono @ GitHub] | *[https://github.com/mono Mono @ GitHub] | ||
*[http://www.mono-project.com/ECMA Mono @ ECMA] | *[http://www.mono-project.com/ECMA Mono @ ECMA] | ||
+ | *[http://www.mono-project.com/Monkeyguide Mono Handbook] | ||
+ | *[http://mono-project.com/Monkeyguide http://xamarin.com Mono商业公司] | ||
+ | *[http://www.ecma-international.org/publications/standards/Ecma-334.htm ECMA Standard 334 , the C# language specification.] | ||
+ | *[http://www.ecma-international.org/publications/standards/Ecma-335.htm ECMA Standard 335 , the Common Language Infrastructure.] | ||
+ | *[http://www.cnblogs.com/shanyou/archive/2012/07/28/2612919.html 国内 Mono 相关文章汇总] | ||
− | [[ | + | [[category:.NET]] |
− | [[ | + | [[category:linux]] |
+ | [[category:mono]] | ||
+ | [[category:C Sharp]] | ||
+ | [[category:ASP.NET]] | ||
+ | [[category:c programming language]] | ||
+ | [[category:LLVM]] | ||
+ | [[category:Huihoo Foundation]] |
2022年3月2日 (三) 04:43的最后版本
您可以在Wikipedia上了解到此条目的英文信息 Mono Thanks, Wikipedia. |
Mono
目录 |
[编辑] 简介
Mono 是 ECMA CLI, C# 和 .NET 的开源实现,采用 MIT 许可协议。
Mono是一个由Novell公司主持的开源(GPL、LGPL、MIT X11、MPL)项目。该项目的目标是创建一系列符合ECMA标准(Ecma-334和Ecma-335)的.NET工具,包括C#编译器和共通语言执行平台。与微软的.NET Framework不同,Mono项目不仅可以运行于Windows系统上,还可以运行于Linux,FreeBSD,Unix,Mac OS X和Solaris。
Mono IDE: MonoDevelop,单元测试:NUnit
[编辑] 功能
[编辑] 规范实现
- Mono open source ECMA CLI, C# and .NET implementation.
- Mono C# compiler sources
- Writing a JIT Compiler in C#
[编辑] 版本
- 5.4
- 5.2
- 5.0
- 4.0
[编辑] 兼容性
.NET 4.0 完全实现:
- C# 4.0
- ASP.Net 4.0
- ASP.Net MVC 1 and MVC 2
- System.Numerics
- Managed Extensibily Framework - Shared with .NET via MS-PL license
- Dynamic Language Runtime - Shared with .NET via MS-PL license
- Client side OData - Shared with .NET via MS-PL license
- Parallel Framework and PLINQ
.NET 3.5 完全实现:
- C# 3.0
- System.Core
- LINQ
- ASP.Net 3.5
- ASP.Net MVC
- LINQ to SQL - Mostly done, but a few features missing
[编辑] macOS
下载安装包或
brew install autoconf automake libtool pkg-config cmake brew install mono brew upgrade mono
[编辑] Debian
apt-get install mono-2.0-devel // on Lenny (5.0). apt-get install mono-devel // on Squeeze (6.0), Wheezy (testing), Sid (unstable), or Experimental.* apt-get install mono-complete // complete Mono on Squeeze (6.0), Wheezy (testing), Sid (unstable), or Experimental. mono-csc -help
apt-get install openssh-server //安装oen ssh远程管理 apt-get install apache2 //安装apache apt-get install mono-gmcs mono-xsp2 libapache2-mod-mono mono-apache-server2 //安装mono a2enmod mod_mono
//命令会被打断 手动运行dpkg --configure -a 纠正问题
vim /etc/apache2/mods-available/mod_mono.conf //配置.net引擎目录 AddType appliction/x-asp-net .aspx .ashx .asmx .ascx .asax .config .ascx .axd DirectoryIndex index.aspx MonoAutoApplication enable MonoServerPath "/usr/bin/mod-mono-server2"
Include /etc/mono-server2/mono-server2-hosts.conf
/etc/init.d/apache2 resuart //重启apache
[编辑] Windows
在 Windows、Windows Server 上安装 Mono、替换 IIS 6、IIS 7、IIS 8。
[编辑] Apache
ASP.NET 4.0
ASP.NET 3.5
Mono 实现了 ASP.NET 2.0, ASP.NET MVC and ASP.NET AJAX
通过mod_mono运行在Apache Server上
apt-get install mono-apache-server2 asp.net-examples libapache2-mod-mono vim /etc/apache2/httpd.conf Alias /webmsg "/var/www/webmsg" MonoApplications "/webmsg:/var/www/webmsg" <Location /webmsg> SetHandler mono </Location> 然后 /etc/init.d/apache2 restart http://localhost/webmsg/Login.aspx
[编辑] XSP
apt-get install mono-xsp2 mono-xsp2-base asp.net-examples /usr/bin/mono /usr/lib/mono/2.0/xsp2.exe --port 8082 --address 0.0.0.0 --appconfigdir /etc/xsp2 --nonstop http://192.168.1.100:8082/samples/
[编辑] Nginx
apt-get install nginx apt-get install mono-fastcgi-server4 fastcgi-mono-server4 /version fastcgi-mono-server4.exe 2.10.0.0 (c) 2007 Brian Nickel FastCGI Backend for XSP fastcgi-mono-server4 /applications=/:/web/aspx /socket=tcp:192.168.1.131:9000 &
Nginx配置
server { listen 80; server_name 192.168.1.131; access_log /var/log/nginx/192.168.1.131.access.log; location / { root /web/aspx; index index.html index.htm default.aspx Default.aspx; fastcgi_index Default.aspx; fastcgi_pass 192.168.1.131:9000; include /etc/nginx/fastcgi_params; } }
在Nginx运行 ASP.NET 和 ASP.NET MVC web 应用
[编辑] Android
Xamarin.Android
- Mono for Android
- Mono for Android
- XobotOS - Android ported to C#, porting Android 4.0 from Java/Dalvik to C#.
[编辑] iOS
Xamarin.iOS
[编辑] MoMA
Mono Migration Analyzer (MoMA)
[编辑] PostgreSQL
[编辑] 项目
- Unity's Fork of Mono Unity
- Xamarin
- MonoDevelop
- MonoXNA
- MonoGame
- CocosSharp
- Moonlight
- ServiceStack
- IKVM.NET
- OpenRA
- KeePass
- Pinta
- Banshee
- XWT cross-platform UI toolkit, using Gtk#.
- CppSharp
- Plastic SCM: A Full Version Control Stack built with Mono Plastic SCM