MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记

说明

以root账户登录Linux操作系统,注意:本文中的所有命令行前面的 #> 表示命令行提示符,不需要输入。

创建源码目录:

#> mkdir /var/local/src

下载安装libgdiplus:

#> cd /var/local/src
#> wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.9.tar.bz2
#> tar -jxvf libgdiplus-2.10.9.tar.bz2
#> cd libgdiplus-2.10.9
#> ./configure
#> make && make install

下载并解压Mono:

#> cd /var/local/src
#> wget http://download.mono-project.com/sources/mono/mono-3.4.0.tar.bz2
#> tar -jxvf mono-3.4.0.tar.bz2

如果在这时就进行配置安装Mono的话,会在make阶段得到一个“找不到 Microsoft.Portable.Common.targets 文件”的错误提示,所以需要先进行如下处理:

#> cd /var/local/src/mono-3.4.0/mcs/tools/xbuild/targets
#> cp Microsoft.Portable.CSharp_4.0.targets Microsoft.Portable.Common.targets
#> vim Microsoft.Portable.Common.targets

在vim中将Microsoft.Portable.Common.targets文件中的这行:<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
删除,然后保存退出。接着进入Mono的源码目录进行配置、编译、安装:

#> cd /var/local/src/mono-3.4.0
#> ./configure
#> make && make install

下载安装gtk-sharp:

#> cd /var/local/src
#> wget http://download.mono-project.com/sources/gtk-sharp212/gtk-sharp-2.12.21.tar.gz
#> tar -zxvf gtk-sharp-2.12.21.tar.gz
#> cd gtk-sharp-2.12.21
#> ./configure

在configure配置阶段你会得到一个csc.exe验证失败的错误,这其实是pkgconfig目录没有在环境变量中指定的原因造成的。那么需要你在/etc/profile文件中追加如下指令:

PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

编辑保存了profile文件后,进入bash使用如下命令使其生效:

#> source /etc/profile

然后重新进入gtk-sharp目录,重新执行如下命令:

#> ./configure
#> make && make install

安装MonoDevelop

如果中间出现某某文件不存在之类的错误,请参考本人写的这篇文章《MonoDevelop 4.0.9 on CentOS 6.3 安装笔记》(http://www.cnblogs.com/SW515/p/3199743.html) 来一一解决它们。接着再安装gnome-sharp和MonoDevelop,具体安装过程同样参考上述文章。

安装完MonoDevelop后,在GUI桌面环境下启动它没反映,这时请打开bash命令窗口,输入如下命令:

#> monodevelop

会在bash中看到一个“找不到libMonoPosixHelper.so文件”的异常信息,其实这个文件已经在我默认安装的 /usr/local/lib 目录中,估计它没有去搜索这个目录,那么接着使用如下命令把这个目录加入到ldconfig的搜索路径中:

#> vim /etc/ld.so.conf.d/local-libs.conf

在vim中输入如下这行文本后保存退出:

/usr/local/lib

接着再使用如下命令重新加载一遍配置文件:

#> ldconfig

至此,你应该可以把MonoDevelop跑起来了!

安装XSP

当你在MonoDevelop中打开一个Web项目并运行的时候,会提示你xsp4没有安装。所以,还得去装这个东东,我在 http://download.mono-project.com/sources 这个源码下载列表中发现xsp的源码包是23-Aug-2011年的版本,所以就去 https://github.com/mono/xsp 扒了一个相对更新的源码下来。解压后进入它的源码目录,查看 INSTALL 文件会有详细的安装说明,照着去做就行了,只需注意下你的编译配置前缀就行了(即 ./configure --prefix=...)。

关于Jexus

因为 Jexus 的安装太简单了,而且又有中文安装说明所以我就不再罗嗦了。它的官网下载地址在 http://www.linuxdot.net

需要提醒的一点是,你的Jexus所有站点都不要占用 端口(即在Jexus的siteconf目录中的那些站点配置文件中的端口设置值),因为MonoDevelop在启动xsp的时候,默认会使用这个端口。否则,在MonoDevelop中调试Web项目时xsp会起不来!

作者:钟峰(Popeye Zhong)目前是 武汉中科通达高新技术股份有限公司 的系统架构师,主要负责公司软件产品的技术架构和公共框架开发。他曾经使用 C 语言做过图形程序设计,在相当长的一段时期内从事 COM/COM+ 组件的开发和设计工作,并且短暂的做过 Lotus/Notes 和 Dialogic 语音卡程序的开发,从2003年初开始使用.NET这个充满趣味和挑战的开发平台,还领导过.NET平台下的 Windows Mobile 几个项目的开发,对WinForm和WebForm均比较熟悉。感兴趣的除了企业应用架构设计、组件开发、安全、图像处理外还对汽车和枪械模型、边境牧羊犬有浓厚的兴趣。如果希望与他联系,可访问 http://www.cnblogs.com/sw515 或者Email zongsoft # gmail.com (将#换成@)

MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记的更多相关文章

  1. MonoDevelop 4.0.9 on CentOS 6.3 安装笔记

    前言 Mono的前东家Novell公司旗下的SUSE Linux系列对Mono及MonoDevelop提供内置支持,所以在SUSE/OpenSUSE这些Linux系统中安装MonoDevelop是非常 ...

  2. Mono on CentOS 6.3 安装笔记

    在网上找到篇关于yum的文章,写的很详细特此推荐下,在阅读本文之前建议先看看它: <CentOS yum源的配置与使用> 如果用的是移动光驱,建议不要开启本地的yum 的本地reposit ...

  3. CentOS 7 之安装Mono&MonoDevelop

    之前在园子里看过一篇文章说的是在CentOS 7上安装MonoDevelop的,一直想照着弄一遍都没有弄,今天深圳外面下暴雨,就在家里弄一下这个吧,以后也试着在Linux上面写写C#玩玩.这一试,还真 ...

  4. CentOS 6.5 搭建 .NET 环境, Mono 5.16.0 + Jexus 5.8

    最近有这样一个打算,就是准备把以前的有一个.NET 网站部署在Linux 下面,正好试试 .NET 跨平台的功能,为后续研究 .netCore 方向准备. 搭建环境: CentOS 6.5 + Mon ...

  5. 调试Xamarin.Android时出现缺少"Mono.Posix 2.0.0"的错误

    1.在http://originaldll.com/file/mono.posix.dll/31191.html中下载mono.posix 2.0.0 dll 2.以管理员权限运行Visual Stu ...

  6. 在ASP.NET MVC 4 on Mono中使用OracleClient in CentOS 6.x的问题记录

    在ASP.NET MVC 4 on Mono中使用OracleClient in CentOS 6.x的问题记录 前言 最近有个Web项目,业务功能不复杂,但是这个客户(某政府部门)有两个硬性要求:1 ...

  7. Xamarin Mono For Android 4.6.07004 完整离线安装破解版(C#开发Android、IOS工具)

      Xamarin是由Miguel de Icaza成立的一家新的独立公司,目的是给Mono一个继续奋斗的机会.Mono for Android (原名:MonoDroid)可以让开发人员使用 Mic ...

  8. Centos、Ubuntu 安装 Mono、Jexus

    Mono是.NET的跨平台实现 在众多关于语言的争论中,.NET一直被以不能跨平台而诟病,Mono改变了这一现状. 有人当心Mono会涉及版权啥的问题.高深的偶不懂,不过我觉得Unity3D都能用,为 ...

  9. CentOS 7下安装Mono

    最近的项目中需要用到Linux作为服务器,而我们的开发技术是基于.NET的,所以只能在CentOS 7上尝试着安装一下Mono,下面是具体的安装步骤: 1.安装一些必备的依赖项 yum -y inst ...

随机推荐

  1. 【.net 深呼吸】序列化中的“引用保留”

    假设 K 类中有两个属性/字段的类型相同,并且它们引用的是同一个对象实例,在序列化的默认处理中,会为每个引用单独生成数据. 看看下面两个类. [DataContract] public class 帅 ...

  2. webpack之傻瓜式教程

    接触webpack也有挺长一段时间了,公司的项目也是一直用着webpack在打包处理,但前几天在教新人的情况下,遇到了一个问题,那就是:尽管网上的webpack教程满天飞,但是却很难找到一个能让新人快 ...

  3. SignalR系列续集[系列8:SignalR的性能监测与服务器的负载测试]

    目录 SignalR系列目录 前言 也是好久没写博客了,近期确实很忙,嗯..几个项目..头要炸..今天忙里偷闲.继续我们的小系列.. 先谢谢大家的支持.. 我们来聊聊SignalR的性能监测与服务器的 ...

  4. 分治法求解最近对问题(c++)

    #include"stdafx.h" #include<iostream> #include<cmath> #define TRUE 1 #define F ...

  5. Matlab 绘制三维立体图(以地质异常体为例)

    前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...

  6. Node.js:理解stream

    Stream在node.js中是一个抽象的接口,基于EventEmitter,也是一种Buffer的高级封装,用来处理流数据.流模块便是提供各种API让我们可以很简单的使用Stream. 流分为四种类 ...

  7. css3制作旋转动画

    现在的css3真是强大,之前很多动画都是用jq来实现,但是css3制作的动画要比jq实现起来简单很多,今天呢,我自己也写了一个css旋转动画和大家分享.效果如下面的图片 思路:1.制作之前呢,我们先来 ...

  8. OpenDigg前端开源项目周报1219

    由OpenDigg 出品的前端开源项目周报第二期来啦.我们的前端开源周报集合了OpenDigg一周来新收录的优质的前端开发方面的开源项目,方便前端开发人员便捷的找到自己需要的项目工具等.react-f ...

  9. Android中的多线程断点下载

    首先来看一下多线程下载的原理.多线程下载就是将同一个网络上的原始文件根据线程个数分成均等份,然后每个单独的线程下载对应的一部分,然后再将下载好的文件按照原始文件的顺序"拼接"起来就 ...

  10. 记:MySQL 5.7.3.0 安装 全程截图

    前言: 下一个班快讲MySQL数据库了,正好把服务器里面的MySQL卸了重装了一下. 截个图,作为笔记.也正好留给需要的朋友们. 目录: 下载软件 运行安装程序 安装程序欢迎界面 许可协议 查找更新 ...