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操作系统,注意:本文中的所有命令行前面的 #> 表示命令行提示符,不需要输入。
创建源码目录:
#> 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会起不来!
MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记的更多相关文章
- MonoDevelop 4.0.9 on CentOS 6.3 安装笔记
前言 Mono的前东家Novell公司旗下的SUSE Linux系列对Mono及MonoDevelop提供内置支持,所以在SUSE/OpenSUSE这些Linux系统中安装MonoDevelop是非常 ...
- Mono on CentOS 6.3 安装笔记
在网上找到篇关于yum的文章,写的很详细特此推荐下,在阅读本文之前建议先看看它: <CentOS yum源的配置与使用> 如果用的是移动光驱,建议不要开启本地的yum 的本地reposit ...
- CentOS 7 之安装Mono&MonoDevelop
之前在园子里看过一篇文章说的是在CentOS 7上安装MonoDevelop的,一直想照着弄一遍都没有弄,今天深圳外面下暴雨,就在家里弄一下这个吧,以后也试着在Linux上面写写C#玩玩.这一试,还真 ...
- CentOS 6.5 搭建 .NET 环境, Mono 5.16.0 + Jexus 5.8
最近有这样一个打算,就是准备把以前的有一个.NET 网站部署在Linux 下面,正好试试 .NET 跨平台的功能,为后续研究 .netCore 方向准备. 搭建环境: CentOS 6.5 + Mon ...
- 调试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 ...
- 在ASP.NET MVC 4 on Mono中使用OracleClient in CentOS 6.x的问题记录
在ASP.NET MVC 4 on Mono中使用OracleClient in CentOS 6.x的问题记录 前言 最近有个Web项目,业务功能不复杂,但是这个客户(某政府部门)有两个硬性要求:1 ...
- Xamarin Mono For Android 4.6.07004 完整离线安装破解版(C#开发Android、IOS工具)
Xamarin是由Miguel de Icaza成立的一家新的独立公司,目的是给Mono一个继续奋斗的机会.Mono for Android (原名:MonoDroid)可以让开发人员使用 Mic ...
- Centos、Ubuntu 安装 Mono、Jexus
Mono是.NET的跨平台实现 在众多关于语言的争论中,.NET一直被以不能跨平台而诟病,Mono改变了这一现状. 有人当心Mono会涉及版权啥的问题.高深的偶不懂,不过我觉得Unity3D都能用,为 ...
- CentOS 7下安装Mono
最近的项目中需要用到Linux作为服务器,而我们的开发技术是基于.NET的,所以只能在CentOS 7上尝试着安装一下Mono,下面是具体的安装步骤: 1.安装一些必备的依赖项 yum -y inst ...
随机推荐
- ASP.NET路由模型解析
大家好,我又来吹牛逼了 ~-_-~ 转载请注明出处:来自吹牛逼之<ASP.NET路由模型解析> 背景:很多人知道Asp.Net中路由怎么用的,却不知道路由模型内部的运行原理,今天我就给大家 ...
- Js new到底发生了什么
在Js中,我们使用了new关键字来进行实例化 那么在这个new的过程中到底发生了什么? 关于构造函数的return 正常来讲构造函数中是不用写return语句的,因为它会默认返回新创建的对象. 但是, ...
- jQuery学习之路(7)- 用原生JavaScript实现jQuery的某些简单功能
▓▓▓▓▓▓ 大致介绍 学习了妙味,用原生的JavaScript实现jQuery中的某些部分功能 定义自己的函数库lQuery ▓▓▓▓▓▓ $()选择器的实现 jQuery是面向对象的,所以自己编写 ...
- 设置line-height:1.5和line-height:150%或者line-height:150px的区别
直接正题: 看一下line-height可能的值: 其实可以分为两类: (1)不带单位的(如line-height:1.5),这种是推荐使用的: (2)带单位的(如line-heigth:30px/1 ...
- 在.NET Core之前,实现.Net跨平台之Mono+CentOS+Jexus初体验
准备工作 本篇文章采用Mono+CentOS+Jexus的方式实现部署.Net的Web应用程序(实战,上线项目). 不懂Mono的请移步张善友大神的:国内 Mono 相关文章汇总 不懂Jexus为何物 ...
- java中Action层、Service层和Dao层的功能区分
Action/Service/DAO简介: Action是管理业务(Service)调度和管理跳转的. Service是管理具体的功能的. Action只负责管理,而Service负责实施. DAO只 ...
- 敏捷转型历程 - Sprint4 回顾会
我: Tech Leader 团队:团队成员分布在两个城市,我所在的城市包括我有4个成员,另外一个城市包括SM有7个成员.另外由于我们的BA离职了,我暂代IT 的PO 职位.PM和我在一个城市,但他不 ...
- 自定义ConfigSection
CCustom configuration section with intelisense
- BZOJ 4196: [Noi2015]软件包管理器 [树链剖分 DFS序]
4196: [Noi2015]软件包管理器 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 1352 Solved: 780[Submit][Stat ...
- Linux学习日记-使用EF6 Code First(四)
一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是 请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...