This post shows students and new users how to install the open source project called Mono on Ubuntu 20.04 | 18.04.
For those who don’t know, Mono provides a .NET-compatible and C# compiler tool sets which make it possible to develop and run C# code in Linux.
For student or new user looking for a Linux system to start learning on, the easiest place to start is Ubuntu Linux OS…. It’s a great Linux operating system for beginners and folks looking for easier Linux distribution to use..
Ubuntu is an open source Linux operating systems that runs on desktops, laptops, server and other devices.
MonoDevelop is an IDE primarily designed for C# and other.NET languages it is an open source integrated development environment for the Linux platform, Mac OS X, and Microsoft Windows. It enables developers to quickly write desktop and ASP.NET Web applications on Linux, Windows and Mac OSX. Visual Studio for Mac is actually MonoDevelop under the hood, with some additions to it by Microsoft. VS for Mac was previously called Xamarin Studio, but the interface has been streamlined and it works with Unity3D. I’m using it for Unity3D,.NET Core, and Xamarin, with a focus on building extensions for VS for Mac right now. MonoDevelop is an IDE primarily designed for C# and other.NET languages. MonoDevelop enables developers to quickly write desktop and ASP.NET Web applications on Linux, Windows and Mac OSX. MonoDevelop makes it easy for developers to port.NET applications created with Visual Studio to Linux and to maintain a single code base for all platforms.
When using Ubuntu, you will find that Linux isn’t so different than Windows and other operating systems in so many ways, especially when it comes to using the system to get work done.…

Both Ubuntu and Windows systems allow you to be productive, easy to use, reliable and enable you to install and run thousands of programs from gaming to productivity suite software for individuals and businesses.

Installing Mono on Ubuntu is pretty straightforward. Simply add its repository and install it from there. To do that, follow the steps below:
Step 1: Add Mono Repository
If you want to always version of Mono on Ubuntu, add its repository. When its repository is added, all newer versions and updates will be available to install.
To add its repository, run the commands below
Next, run the commands below to add its repository and key and repository file to Ubuntu.
That should make Mono repository available on Ubuntu
Step 2: Install Mono
Now that Mono repository and key are added, run the commands below to finally install it.
If you’re going to be building .NET project, the easiest way to do it is using MonoDevelop IDE. To install MonoDevelop, run the commands below:
sudo apt install monodevelop
Use MonoDevelop to build your apps.
If you’re going to be running the NUnit Unit Tests, you should install the NUnit Plugin for MonoDevelop. To do that, run the commands below:
sudo apt install monodevelop-nunit

To verify if Mono is installed, run the commands below:
mono --version
You should see similar lines as below:
That should do it
Conclusion:
This post shows you how to install Mono and related development tools on Ubuntu 18.04 | 16.04. If you find any error above, please comment below:
You may also like the post below:
Author: Anubhav Singh
The MonoDevelop IDE is built around the concept of an extension tree. An extension package is a set of extensions that plug into extension points to add functionality to the IDE. The whole IDE is built this way.
The CBinding extension package enables developers to write C/C++ solutions in the IDE. However, there were many features missing in it. My project was about writing some of those features and make changes to existing ones.
I have been working in this over past 4 months as part of Google Summer of Code 2017 student and there are still lot of things that are yet to be done! The very first feature I worked on was implementing support to be able to use compilers present on Windows (GCC, MSVC, mingw32 etc..). This was done via CMake as that’s the only project format currently supported.
In Windows, the CBinding supports the following toolchains:
- MinGW32
- CLang
- Visual Studio 15 2017
- Visual Studio 14 2015
- Visual Studio 12 2013
Users can easily switch between these toolchains using Tools > Options. It currently lists available toolchains based upon the platform (Windows, Linux, Mac) but I plan to write an additional check to load only the toolchains installed on that particular platform.
Monodevelop C++
The old “MD1” project system and templates are removed from the CBinding and now it only supports CMake. For code completion, CLangManager now targets CMake project system.
Since the inception of CBinding, MonoDevelop’s codebase has changed a lot and the extensions still use some of the APIs of MonoDevelop that are no longer public, so enabling some functionality required changing the MonoDevelop codebase and upstreaming these changes, this is in progress :)
Apart from this, the CMake projects subclass SolutionItem but it needs some functionality from the Project base class which is quite specific to MSBuild project system, so I have done some chaining between the Project and SolutionItem/WorkspaceObject in the MonoDevelop source code to allow CBinding to use those properties.
Monodevelop 7


Monodevelop 4
The code can be found here:
Monodevelop.com
Overall it was a great learning experience which I would like to continue further. I would like to thank the entire Mono organisation specially Mikayla Hutchinson for being a constant support for me. Understanding and working on such a large codebase was an ultimate experience. I had a lot of fun this summer!
Comments are closed.