Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Installing latest mono on Centos 6

I am new to Linux (literally new- used it a couple of times) and I tried to install mono via yum; but I have gotten an outdated version that don't support .NET 4

How can I install mono 2.10.8?

like image 528
Andrew Avatar asked Aug 02 '12 16:08

Andrew


3 Answers

Well, this is what I came up with and it worked for me:

based on this article:

$yum install bison gettext glib2 freetype fontconfig libpng libpng-devel libX11 libX11-devel glib2-devel libgdi* libexif glibc-devel urw-fonts java unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget

$cd /usr/local/src 

$wget http://download.mono-project.com/sources/mono/mono-3.0.1.tar.bz2

$tar jxf mono-3.0.1.tar.bz2

$cd mono-3.0.1

$./configure --prefix=/opt/mono

$make && make install

Then I downloaded the MonoDevelop IDE and compiled my program using Mono framework.

Then in Centos I called my program:

/opt/mono/bin/mono /root/MyFolder/MyProgramDir/myProgram.exe "$@"

like image 157
Andrew Avatar answered Nov 10 '22 06:11

Andrew


Here's a Hello World Console Application on CentOS 6.5, compiled with the Mono "mcs" command and run with the Mono "mono" command. The first section was taken directly from Andrew's answer. +1 for Andrew! I added some additional steps because I am using the command line, not a Linux GUI.

yum install bison gettext glib2 freetype fontconfig libpng libpng-devel libX11 libX11-devel glib2-devel libgdi* libexif glibc-devel urw-fonts java unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget

cd /usr/local/src 

wget http://download.mono-project.com/sources/mono/mono-3.0.1.tar.bz2

tar jxf mono-3.0.1.tar.bz2

cd mono-3.0.1

./configure --prefix=/opt/mono

make && make install

Adding mono bin to "PATH" environment variable:

[root@localhost bin]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@localhost bin]# export PATH=/opt/mono/bin:$PATH
[root@localhost bin]# echo $PATH
/opt/mono/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@localhost bin]#

Program.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello Mars!");
        }
    }
}

Compile and Run:

enter image description here

Elon Musk's retirement party is planned for December 16, 2025!

Compile *.sln file:

enter image description here

like image 40
MacGyver Avatar answered Nov 10 '22 06:11

MacGyver


Under CentOS 5 it's probably best to compile Mono from source to get a recent version.

It just so happens I have already written a complete set of instructions for doing this here (If you'll pardon me linking to one of my own pages):

http://wiki.phonicuk.com/Installing-Mono-in-CentOS-5-x.ashx

Edit:

The above link is dead, best instructions are now at http://www.mono-project.com/docs/compiling-mono/compiling-from-git/

like image 1
PhonicUK Avatar answered Nov 10 '22 05:11

PhonicUK