CentOS 7 之安装Mono&MonoDevelop
之前在园子里看过一篇文章说的是在CentOS 7上安装MonoDevelop的,一直想照着弄一遍都没有弄,今天深圳外面下暴雨,就在家里弄一下这个吧,以后也试着在Linux上面写写C#玩玩。这一试,还真是试出了一些经验了,或者说是一些坑吧。
由于园子里这篇文章主要是使用yum安装的,于是我想用源码来安装,于是我先在Linux公社找到了这篇文章。根据作者的说明及经验,我先下载了几个包到/usr/local/src下面。
wget http://download.mono-project.com/sources/mono/mono-4.0.1.tar.bz2
wget http://download.mono-project.com/sources/monodevelop/monodevelop-5.9.0.431.tar.bz2
wget http://download.mono-project.com/sources/mono-addins/mono-addins-1.1.tar.gz
wget http://download.mono-project.com/sources/gtk-sharp212/gtk-sharp-2.12.26.tar.gz
wget http://download.mono-project.com/sources/gnome-sharp2/gnome-sharp-2.24.1.tar.bz2
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-3.12.tar.gz

接下来就是我的折腾开始,先装mono-4.0.1
先提示我
error: no acceptable C compiler found in $PATH
于是我先后使用以下两个补全包后,才./configure --prefix=/usr/local && make && make install 成功。
[root@51xyd ~]# yum -y install gcc [root@51xyd ~]# yum -y install gcc-c++
为了验证,我使用了mono --version查看了一下,应该算安装成功了。
[root@51xyd hello]# mono --version
Mono JIT compiler version 4.0. (tarball Sat May :: CST )
Copyright (C) - Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: altstack
Notifications: epoll
Architecture: amd64
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: sgen
[root@51xyd hello]#
接下来,我想安装接下来的5个包,无一成功, 其中有一项的时候,还出现提示说
No package 'glib-2.0' found
于是我使用
yum install libgnomeui-devel
来解决,不过,最终还是没有完全安装成功。
弄了好久,最后我决定就去官网按官方说明来操作一遍。
1,
rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
yum-config-manager --add-repo http://download.mono-project.com/repo/centos/
2,
yum install -y mono-devel
yum install -y mono-complete
yum install -y referenceassemblies-pcl
3,
yum install monodevelop
没有出现错误,但是点击却是没有任何反应的。时间到了下午了,不想再折腾了,准备先用mono测试一下.NET了。于是新建一个~/Downloads/hello的目录
然后vim hello.cs,输入
using System; public class HelloWorld
{
static public void Main ()
{
Console.WriteLine ("Hello Mono World");
}
}
:wq!退出
接着又vim hellowin.cs,并且输入
using System;
using System.Windows.Forms; public class HelloWorld : Form
{
static public void Main ()
{
Application.Run (new HelloWorld ());
} public HelloWorld ()
{
Text = "Hello Mono World";
}
}
:wq!
接着

成功在centos7上开发c#程序了。
休息了一会儿,继续打发开电脑,在Systemtool里面查看安装的一些软件,试着把我上面5个没安装成功安装的软件安装上去。

然后我重新打开monodevelop,这时有反应了,不过还有一个错误

我试着想用我的下载的源码包去修复这个问题,但提示说
error CS0006: Metadata file `Mono.GetOptions.dll' could not be found
Bing.com之后有人说是
经过调查,
1. 原来是gnome-sharp版本太旧的原因,
前面用的gnome-sharp-2.20.*用了Mono.GetOptions,更新至gnome-sharp-2.24.*
2. 注释掉gnome-sharp-2.24.1/sample/gnomevfs/Makefile中关于 Mono.GetOptions的内容
但我注释掉后,没有成功解决这个问题,然后我也上网上找了一个版本
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/g/gnome-sharp-2.24.2-7.el7.x86_64.rpm
安装完之后,也没有解决这个问题。
但是至少是可以打开了,而且也可以编译,输出。最后上图。

CentOS 7 之安装Mono&MonoDevelop的更多相关文章
- Centos 7.0 安装Mono 3.4 和 Jexus 5.6
2013-07-26 写过一篇<CentOS 6.3下 安装 Mono 3.2 和Jexus 5.4>,CentOS 7在CentOS 6的基础上有很大的调整,本文是这篇文章的更新,主要介 ...
- centos 6.3安装mono和monoDevelop过程
Mono官方网站:http://www.mono-project.com MonoDevelop官方网站:http://monodevelop.com/ 注:整个安装过程最好在同一个终端下完成! 1. ...
- Centos、Ubuntu 安装 Mono、Jexus
Mono是.NET的跨平台实现 在众多关于语言的争论中,.NET一直被以不能跨平台而诟病,Mono改变了这一现状. 有人当心Mono会涉及版权啥的问题.高深的偶不懂,不过我觉得Unity3D都能用,为 ...
- CentOS 7下安装Mono
最近的项目中需要用到Linux作为服务器,而我们的开发技术是基于.NET的,所以只能在CentOS 7上尝试着安装一下Mono,下面是具体的安装步骤: 1.安装一些必备的依赖项 yum -y inst ...
- CentOS 6.3下 安装 Mono 3.2 和Jexus 5.4
最新更新参看: Centos 7.0 安装Mono 3.4 和 Jexus 5.6 2012年初写过一篇<32和64位的CentOS 6.0下 安装 Mono 2.10.8 和Jexus 5.0 ...
- CentOS 7 上部署Mono 4 和Jexus 5.6
概述 在这篇文章中我们将讨论如何在CentOS 7操作系统,安装 jexus. mono 和 配置 jexus,因此它将能够在这种环境中运行一个asp.net mvc 4 应用.这篇文章是描述如何在 ...
- MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记
MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记 说明 以root账户登录Linux操作系统,注意:本文中的所有命令行前面的 #> 表示命令行提示符 ...
- Mono on CentOS 6.3 安装笔记
在网上找到篇关于yum的文章,写的很详细特此推荐下,在阅读本文之前建议先看看它: <CentOS yum源的配置与使用> 如果用的是移动光驱,建议不要开启本地的yum 的本地reposit ...
- centos 6.X minimal 系列最小化安装完成后,安装mono和jexus过程小记录
在使用虚拟机安装minimal版centos运行mono+jexus的时候,遇到了一些坑,记录一下,比如虚拟机访问不了网络,没wget命令没开放80端口,等等小问题,其他网上教程已经有mono+jex ...
随机推荐
- mvc vs iis默认页面
有时候,再iis里面设置了web的默认页面index.html 希望跳转到这个页面index.html默认页面 而 mvc则跳转到路由里面的设置页面 怎么忽略这个呢. 设置路由可能是个好办法,能实现 ...
- JavaEmail
一.邮件相关基本概念 a)邮件服务器:某厂商提供的电子邮件服务器的集群(或群集) b)电子邮箱:邮件服务器上提供的个人或企业的邮件空间 c)邮件传输协议:邮件服务器之间,和个人或企业与邮件 ...
- XML SAX解析
SAX是一种占用内存少且解析速度快的解析器,它采用的是事件驱动,它不需要解析完整个文档,而是按照内容顺序,看文档某个部分是否符合xml语法,如果符合就触发相应的事件.所谓的事件就是些回调方法( cal ...
- POJ2479 Maximum sum(dp)
题目链接. 分析: 用 d1[i] 表示左向右从0到i的最大连续和,d2[i] 表示从右向左, 即从n-1到i 的最大连续和. ans = max(ans, d1[i]+d2[i+1]), i=0,1 ...
- 怎样在WIN7系统下安装IIS
http://jingyan.baidu.com/article/19192ad853224ce53f570748.html
- [LeetCode] 347. Top K Frequent Elements 解题思路 - Java
Given a non-empty array of integers, return the k most frequent elements. For example,Given [1,1,1,2 ...
- yum puppet dashboard
该Dashboard是一种运行在Rails上的Ruby应用程序,它还不是可以添加到系统版本中的程序包,但是我们可以从Puppet Labs以RPM或者DEB包的形式获得该软件.我们也可以选择从资源进行 ...
- Git全解析之远程仓库交互
文章目录 1. Git全解析之远程仓库交互 1.1. 中央仓库的概念 1.2. 本地分支与远程分支 1.3. pull与fetch 1.4. 关于捐赠 Git全解析之远程仓库交互 中央仓库的概念 虽然 ...
- 关于C#泛型列表List<T>的基本用法总结
//示例代码如下:using System;using System.Collections.Generic;using System.Collections.ObjectModel;namespac ...
- 数据库 —— mySQL的基本操作
学习资源: 0.学习教程 :MySQL 教程(runoob.com) (MySQL Tutorial)turtorialPoint 1.学习帮助手册与平台: MySQL学习平台 英文手册chm ...