浅谈 Linux 的 C# 开发环境

我们知道 mono 是一个跨平台的、开源的 .NET 开发框架。它是 Novell 公司基于 SUSE Linux
操作系统开发的。

虽然在 openSUSE 操作系统下开发 C# 程序可以轻松获得最新的 mono 开发环境,但是我更喜欢 Ubuntu 操作系统。

由于 Ubuntu 操作系统包括了“阿帖便笺(Tomboy)”和“F-Spot 照片管理器”这两个使用
C# 开发的应用程序,所以它已经包括了 mono 运行库,不需要另外安装。

但是,要想使用 C# 编译器就必须使用 sudo apt-get install mono-devel 命令安装 mono 开发环境。

然后,在使用 vi 或者 gedit 编辑 C# 源程序后,就可以使用 gmcs 来编译了。

上图就是使用 vi 编辑 C# 源程序的例子。想必老资格的 Unix 程序员大部分都有 vi 情结吧 

上图是使用 gedit 来编辑 ClrInfo.cs 的例子。

[email protected]:~/work$ mono --version
Mono JIT compiler version 2.4.2.3 (Debian 2.4.2.3+dfsg-2)
Copyright (C) 2002-2008 Novell, Inc and Contributors. www.mono-project.com
    TLS:           __thread
    GC:            Included Boehm (with typed GC)
    SIGSEGV:       altstack
    Notifications: epoll
    Architecture:  amd64
    Disabled:      none
[email protected]:~/work$ gmcs --version
Mono C# compiler version 2.4.2.3
[email protected]:~/work$ gmcs ClrInfo.cs
[email protected]:~/work$ ./ClrInfo.exe
OS  Version: Unix 2.6.31.14
CLR Version: 2.0.50727.1433
Default Encode: System.Text.UTF8Encoding
[email protected]:~/work$

上面就是 ClrInfo 程序编译和运行的情况。

同样的 ClrInfo 程序在 Windows Server 2003 R2 Enterprise Edition 中的运行结果如下所示:

D:\work> ClrInfo.exe
OS  Version: Microsoft Windows NT 5.2.3790 Service Pack 2
CLR Version: 2.0.50727.3603
Default Encode: System.Text.DBCSCodePageEncoding
D:\work>

如果需要使用 IDE 等更加强大的功能,可以通过 sudo apt-get install monodevelop 来安装 MonoDevelop ,这是一个使用 C# 以及其它 .NET 语言的集成开发环境。

MonoDevelop 支持以下四种格式的项目文件:

  1. MonoDevelop 1.0
  2. MSBuild (Visual Studio 2005)
  3. MSBuild (Visual Studio 2008)
  4. MSBuild (Visual Studio 2010)

这可以在点击“编辑 -> Preferences”菜单项后弹出的“选项”对话框中的“选项 -> 装入/保存”中设置,如下图所示:

如果想实践敏捷软件软件开发,进行测试驱动开发,必须使用 sudo apt-get install monodevelop-nunit 命令来安装 NUnit 插件。然后,就可以新建一个 C# NUnit 项目了,如下图所示:

然后,点击“工程 -> Options”菜单项,在弹出的“工程选项”对话框中可以进行一些设置,例如我喜欢把 Tab width 设置为 2 个空格,并且转换 tabs 为空格,如下图所示:

然后就可以进行 C# 程序开发了。点击“运行 -> Run Unit Tests”菜单项就可以运行单元测试了,如下图如示:

版权声明:本文为博主http://www.zuiniusn.com原创文章,未经博主允许不得转载。

时间: 2024-12-18 20:01:08

浅谈 Linux 的 C# 开发环境的相关文章

浅谈 什么是JAVA开发环境、测试环境及生产环境,及它的过程 (转)

从网上整理了一些回答加上个人理解. 环境分以下几种: 1.开发和配置环境:所有的开发和配置在这个环境里进行.一般情况下,只有这个环境可以改配置和进行开发,并且一般不在这个环境下创建数据.(开发环境就是每个开发人员电脑上的开发环境,只有开发人员可以配置和开发,写数据测试放在测试环境) 2.测试环境:新开发和配置通过系统传输到测试环境,进行功能测试,可以创建数据.(开发人员开发完上传到SVN,测试人员下载下来测试.我们公司测试人员不懂IDE,所以是由我们开发人员下载好,他直接通过IP地址访问来测试的

浅谈Linux中的信号机制(二)

首先谢谢 @小尧弟 这位朋友对我昨天夜里写的一篇<浅谈Linux中的信号机制(一)>的指正,之前的题目我用的“浅析”一词,给人一种要剖析内核的感觉.本人自知功力不够,尚且不能对着Linux内核源码评头论足.以后的路还很长,我还是一步一个脚印的慢慢走着吧,Linux内核这座山,我才刚刚抵达山脚下. 好了,言归正传,我接着昨天写下去.如有错误还请各位看官指正,先此谢过. 上篇末尾,我们看到了这样的现象:send进程总共发送了500次SIGINT信号给rcv进程,但是实际过程中rcv只接受/处理了1

(转)浅谈 Linux 内核无线子系统

前言 Linux 内核是如何实现无线网络接口呢?数据包是通过怎样的方式被发送和接收呢? 刚开始工作接触 Linux 无线网络时,我曾迷失在浩瀚的基础代码中,寻找具有介绍性的材料来回答如上面提到的那些高层次的问题. 跟踪探索了一段时间的源代码后,我写下了这篇总结,希望在 Linux 无线网络的工作原理上,读者能从这篇文章获得一个具有帮助性的概览. 1.全局概览 在开始探索 Linux 无线具体细节之前,让我们先来把握一下 Linux 无线子系统整体结构.如图1,展示了 Linux 无线子系统各个模

如何将linux用在开发环境中的

如何将linux用在开发环境中的 1.我为什么要写这篇文章 一直想深入学习一下linux的使用,于是将家里的笔记本装了linux系统,但是要将自己的系统打造一个适合开发的环境确实是一件费心费力的事,而且会经常出现一些莫名其妙的问题,以我自己的使用经验觉得要想用linux做开发环境,你要了解每个软件,不然出现一些问题就很难解决,其他不说,就是光搞好驱动问题就让人蛋疼了. 我的电脑装了linux之后一直高温不下,在网上找了一些方法,关掉独显也好不了多少,开机2个小时温度就飙到70-90度,试过很多发

浅谈Linux下Makefile编写

浅谈Linux下Makefile的编写 前言:本文简要介绍Makefile文件的编写规范,结合具体项目中的应用进行讲解. 具体代码地址: https://github.com/AnSwErYWJ/DogFood/blob/master/Makefile 简介 Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作.而makefile 文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并要求定义源文件之间的依赖关

浅谈linux内核栈(基于3.16-rc4)

在3.16-rc4内核源码中,内核给每个进程分配的内核栈大小为8KB.这个内核栈被称为异常栈,在进程的内核空间运行时或者执行异常处理程序时,使用的都是异常栈,看下异常栈的代码(include/linux/sched.h): 1 union thread_union { 2 struct thread_info thread_info; 3 unsigned long stack[THREAD_SIZE/sizeof(long)]; 4 }; THREAD_SIZE值为8KB,因此内核为进程的异常

关于64位Linux配置android开发环境出现 No such file or directory

前几天在64位系统上部署android开发环境的时候出现了这种问题 /aapt: No such file or directory 通过谷老师,知道原理android SDK里面的程序全是32位的,没有64位的.不知道为啥要写个x64, 我们仅仅要安装一下32位的执行库即可了,sudo apt-get install ia32-libs,就这么简单,一键搞定. 关于64位Linux配置android开发环境出现 No such file or directory,布布扣,bubuko.com

linux后台server开发环境的部署配置和验证(nginx+apache+php-fpm+FASTCGI(C/C++))

linux后台server开发环境部署配置 引言 背景 随着互联网业务的不断增多.开发环境变得越来越复杂,为了便于统一server端的开发部署环境,特制定本配置文档. 使用软件 CentOS 6.3(Linux version 2.6.32-279.el6.x86_64) gcc (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4) 本次配置 Nginx 1.5.8 Apache 2.4.7 php 5.3.26 目的 构造WEB前端技术架构.web前端的部署结构技术全然

Unix/Linux环境C编程入门教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建

1. openSUSE是一款优秀的linux. 2.选择默认虚拟机 3.选择稍后安装操作系统 4.选择linux  opensuse 5. 选择默认虚拟机名称 6.设置处理器为双核. 7.内存设置为2G 8. 选择网络地址转换 9.设置IO控制器 10. 选择默认磁盘类型 11.创建一个新的虚拟磁盘 12.设置磁盘大小 13.选择路径保存虚拟磁盘 14. 完成虚拟机创建 15.设置虚拟机 16.选择opensuse镜像 17.开启虚拟机 18.虚拟机启动 19.安装opensuse 20.安装程