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. Oracle分析函数入门

    一.Oracle分析函数入门 分析函数是什么?分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计 ...

  2. ABP文档 - 异常处理

    文档目录 本节内容: 简介 启用错误处理 非AJAX请求 显示异常 UserFriendlyException Error 模型 AJAX 请求 异常事件 简介 这个文档针对Asp.net Mvc和W ...

  3. BootStrap_02之全局样式及组件

    1.BootStrap指定的四种屏幕尺寸: ①超大PC屏幕--lg(large):w>=1200px: ②中等PC屏幕--md(medium):1200px>w>=992px: ③P ...

  4. MVC Core 网站开发(Ninesky) 2.1、栏目的前台显示(补充)

    在2.1.栏目的前台显示中因右键没有添加视图把微软给鄙视了一下,后来有仔细研究了一下发现应该鄙视自己,其实这个功能是有的,是自己没搞清楚乱吐糟. 其实只要在NuGet中安装两个包(Microsoft. ...

  5. 香蕉云APP,2016下半年开发日记

    2016-6-17  数据库设计不应该过多依赖范式,适度的冗余可以加快搜索速度,在服务器的配置还可以的情况下,可以采用冗余来解决查找慢的问题.还一个是要选择好数据库引擎,例如 InnoDB 和 myi ...

  6. PHP之时间和日期函数

    // 时间日期函数 Time <?php date_default_timezone_set('UTC'); // 获取当前时间的时间戳 $time0 = mktime(); $time1 = ...

  7. 【需求设计1】VIP积分系统无聊YY

    RT,想到什么就写什么呗,这是最简单的方式,顺便给自己做一个记录,反正自己记忆力也不太好.本文是仿陆金所的积分系统,自己YY的一套东西. 首先我想做一个VIP兑换投资卷的功能: 我们先来确定一些我知道 ...

  8. 设置Hyper-V和VMware多个服务之间共存

    这个方法是解决多个服务之间不能共存,下面相当于是以Hyper-V和VMware做例子,其他的也适用. 今天准备安装VMware Workstation 10,然后玩玩MAC OS. 没想到,淡定的我双 ...

  9. window7系统怎么找到开始运行命令

    右击开始->属性->开始菜单->自定义>点击运行命令(选择)->确定

  10. CentOS 6.5安装Node.js, npm

    CentOS上可以通过下载*.tar.gz安装包的方式自己解压缩.编译的方式安装,同时还可以采用EPEL的方式安装: Node.js and npm are available from the Fe ...