How can I install Visual Studio?

I'd prefer to use it in Wine or PlayOnLinux if possible.

up vote 23 down vote accepted

You can try Wine, but per the Wine application database, Visual Studio generally works poorly under Wine:

From this Wine site page:

What works
nothing, install fails

What does not
n/a

What was not tested
n/a

http://appdb.winehq.org/objectManager.php?sClass=application&iId=892

  • Sorry, none that I know about other than Wine :( – roadmr Oct 5 '12 at 16:29

You'll need to run a virtual machine. Wine won't be able to handle it. Look into install VirtualBox (not necessarily the best but easier). You'll need to create a windows VM and then once you have windows installed install Visual Studio.

If you're looking at equivalent IDEs. Qt Creator, Eclipse, KDevelop, Anjuta, Intellij can all act as possible alternatives depending on the language you wish you develop in.

Possibly useful link on how install windows on VirtualBox: http://www.wikihow.com/Install-Windows-XP-on-Ubuntu-with-VirtualBox

  • 5
    As I understand this is the best option to run without headaches. Especially in case of Visual Studio which (unlike games) doesn't need a lot of performance. – Jet Jul 12 '14 at 10:02

You can use the Mono Development IDE to write .NET code in Ubuntu, rather than trying to use a Microsoft product in a non-Microsoft OS (which others have rightly pointed out is never going to be supported, easy, or in MS' best interests).

It has most of the features of Visual Studio, and will run faster and be more stable.

To install monodevelop, use this command in a terminal:

sudo apt-get install monodevelop

Monodevelop Home page: http://monodevelop.com/

  • 8
    I use monodevelop everyday, it works well for me. – trampster Oct 2 '12 at 9:34
  • 4
    "buggy and lack of features" is exactly what you would get from trying to run Visual Studio in Ubuntu - you will have to either make a compromise somewhere or stick with MS Windows as your OS. – ImaginaryRobots Oct 2 '12 at 21:11
  • MonoDevelop is still unable to open Visual Studio 2012 solution and project files :(. – Erwin Mayer Oct 27 '12 at 18:48
  • @ErwinMayer WorksForMe. On my ex-job I been involved in C# development, and my host OS was GNU/Linux distro. Sharing projects between Visual Studio in a VM and Monodevelop worked just fine. However it should be noted that due to lack of vim-style extension in monodevelop in was completely unusable. I have used it only for compilation and tiny edits. – Hi-Angel Dec 5 '17 at 6:54
  • @ImaginaryRobots monodevelop partially a Microsoft product either. It's developed by Xamarin, and Xamarin is owned by Microsoft. – Hi-Angel Dec 5 '17 at 6:56

Sorry to give you the wrong answer, but I really doubt this will ever be truly supported.

Some people might actually get it working someday, but Microsoft will most certainly never support this officially; or even make things easy for the community, for that matter. From what I know, running the MS Office suite itself is horribly painful, it becomes more difficult with each new version.

Don't take it personally. Business is business. And their share on development is not on supporting the opensource community. For all they care, they strive on making their tools less and less compatible overtime.

If you really need this inside Linux, the best choice would be to have Windows in a Virtual Machine.

  • 3
    Joke's on you! They've released Visual Studio Code and are moving towards Linux support (yes I know you wrote this in 2012) – Christian Stewart May 14 '15 at 19:13
  • 9
    Joke's on you! Visual Studio Code is based on Atom editor which was already cross-platform and is still far far far far behind Visual Studio. I guess you don't use VS much. – Abhinav Gauniyal Jul 22 '15 at 7:11

Visual Studio is tightly integrated with Windows and Developing a .NET application using any language (C# or VB) takes more than just having Wine, and since Wine is not capable enough to provide complete development runtime as .NET in Linux.

If you want to develop software specifically in C#, on Linux, you can use MonoDevelop

Since, you're asking for Visual Studio 2010 (.NET 4.0), with MonoDevelop, you'll not be able to develop an app that particularly uses .NET 4, as of now MonoDevelop is in version 3.0.2 (somewhat equivalent to .NET 3.0).

You can still use Windows virtually within Ubuntu, using VirtualBox. And then install Visual Studio there, but still a serious app development is not recommended to be done in Virtualized environment.

  • 2
    @Kush (who edited this post, adding the relevant section): Can you provide some kind of explanation, or citation(s), to support the idea that virtualized environments are poorly suited for serious software development? I've developed software in virtual environments without problems, and in my personal experience, the more sophisticated and serious a programmer is, they more likely (than me) they are to do some or all of their serious app development in such an environment. – Eliah Kagan May 31 '12 at 22:08
  • 3
    @EliahKagan: The only reason why using Virtualized environment should be avoided while developing, is the performance we get while development, no matter how better configuration we have, Virtual Machines simply can't compete the performance of having Physical installation. Also, if VM is unavoidable, the host machine must be capable enough to take the load of development tools being used. – Kushal Jun 1 '12 at 4:30
  • 1
    @Kush Good answer, thanks! (Of course, if someone is choosing between running VS2010 on a virtual machine hosted in Ubuntu, or on an old physical machine with poor specs pulled out of the closet for this purpose, the VM might perform better.) – Eliah Kagan Jun 1 '12 at 5:30
  • ⁻¹. @Kushal shame on you, it's your ⁻¹ by the way. You should've left a separate answer instead of hijacking an existing one. First, wine is capable enough to provide .NET in GNU/Linux. The secret in simply installing Windows version of Mono. You being asked about it for every new wineprefix btw. Second: on my ex-job I've been using GNU/Linux host and Windows guest for "serious C# development" just fine. More over, not long before I quit, for political reasons I had to swap host and guest, and I dare you, building on all cores in Windows host makes it unusable as opposed to Ubuntu host. – Hi-Angel Dec 5 '17 at 7:13
  • @Hi-Angel Care to read question, answer and comment dates here? .NET Core is open source and has been ported to Linux since then, and this answer is no longer 100% correct, so burst your "anger" somewhere else. Peace out. – Kushal Dec 5 '17 at 18:21

Now Microsoft offer a cross platform version of visual studio. It's Not feature rich as Visual Studio Windows Edition.

Follow the white rabbit :) https://www.visualstudio.com/en-us/products/code-vs.aspx

  • 6
    Vs code is an editor, not an IDE. – Ave Mar 6 '16 at 14:42
  • agreed! but worth to mention :) – Dasun Mar 18 '16 at 8:57
  • Yeah, since I installed Linux as dual boot, %90 time of my time on pc is on linux, and VS Code is really helping me, as monodevelop's color scheme is white. – Ave Mar 18 '16 at 10:36

You could try MonoDevelop, which is a clone of VisualStudio, but it hasn't as much features. MonoDevelop uses the Mono framework, a platform-independent implementation of C# and the CLI, but it's not fully compatible with .NET. You will have to port your .NET applications to Mono. At least you have to rewrite the UI, WPF isn't included in Mono and Winforms is crappy on Linux.

Although there are some Linux applications written in C# (Banshee, Tomboy, Pinta, PDFMod, Smuxi), .NET/Mono isn't very popular on Linux. It's not officially supported by Microsoft, and the developers of Mono (Xamarin) are actually focusing on mobile devices (Android, iOS) and not the Linux desktop. I recommend you to switch to another IDE and programming language that is fully supported on Linux. If you really can't live without .NET (e.g because you make your living writing .NET programs), you have to keep using Windows, because that's the only platform it supports.

  • 2
    Don't get me wrong, Mono is not a bad framework and MonoDevelop is not a bad IDE, but don't expect it to be fully compatible with .NET and Visual Studio. It's like switching from Microsoft Office (<= 2003) to LibreOffice, most of it is the same, but not everything. – user244 Oct 2 '12 at 16:20
  • The latest version of .NET is currently supported under Linux: dotnet.github.io/getting-started – matandked Feb 10 '16 at 21:32

protected by Community Aug 29 at 9:13

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?