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 ...
随机推荐
- less学习
// 1.变量:颜色可做+- // from @nice-blue: #5B83AD; @light-blue: @nice-blue + #111; #header { color: @light- ...
- 在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)
环境准备 1.亚马逊EC2 Windows Server 2016 with Container 2.Visual Studio 2015 Enterprise(Profresianal要装Updat ...
- InnoDB关键特性学习笔记
插入缓存 Insert Buffer Insert Buffer是InnoDB存储引擎关键特性中最令人激动与兴奋的一个功能.不过这个名字可能会让人认为插入缓冲是缓冲池中的一个组成部分.其实不然,Inn ...
- node-sass 安装失败的解决措施
在测试gulp-webapp的时候遇到了styles不能被正常编译的问题,究其原因是node-sass没有被正常安装. 根本原因是国内网络的原因. 最终的解决方法是通过淘宝的npm镜像安装node-s ...
- android键盘
在应用的开发过程中有不少的情况下会用到自定义键盘,例如支付宝的支付密码的输入,以及类似的场景.android系统给开发者们提供了系统键盘,KeyboardView,其实并不复杂,只是有些开发者不知道罢 ...
- 如何利用ansible callback插件对执行结果进行解析
最近在写一个批量巡检工具,利用ansible将脚本推到各个机器上执行,然后将执行的结果以json格式返回来. 如下所示: # ansible node2 -m script -a /root/pyth ...
- 解读发布:.NET Core RC2 and .NET Core SDK Preview 1
先看一下 .NET Core(包含 ASP.NET Core)的路线图: Beta6: 2015年7月27日 Beta7: 2015年9月2日 Beta8: 2015年10月15日 RC1: 2015 ...
- js报错: Uncaught RangeError: Invalid string length
在ajax请求后得到的json数据,遍历的时候chrome控制台报这个错误:Uncaught RangeError: Invalid string length,在stackoverflow查找答案时 ...
- Html.DropDownLis绑定数据库
效果: 方法一: View: <div class="col-md-md-4"> <div class="input-group"> & ...
- JAVA面试题
在这里我将收录我面试过程中遇到的一些好玩的面试题目 第一个面试题:ABC问题,有三个线程,工作的内容分别是打印出"A""B""C",需要做的 ...