none
Visual Studio 2017, C#, Mono Cross Platform Linux?

    Question

  • So what is the method to use Visual Studio 2017 (or 2015) to develop & build a cross platform desktop GUI application with Linux?  The advertising all indicates Xamarin is the way to go...You go to Mono website and the current pages indicate to no longer use monodevelop on Windows, and point to downloading / install Xamarin to VS.  I know Xamarin is now Microsoft and built on Mono, so that sounds reasonable.  OK, install Xamarin to VS2017 - except nothing there indicates that it works with Linux / Mono... just Android / Apple, etc.

    Listed in the Extensions section on VS2017 you'll find a lame "mono-tools" helper app that has a warning to not install to VS2017 (Really?? Why is it listed??)...when it is installed the XBuild function sort of works, the debugger does not (hard-crashes VS2017, which I thought wasn't supposed to happen...I guess that's why the install warning is there).  Haven't seen the other "monodebugger" remote debugger tool work right either in VS2017.

    I dropped back to VS2015 and for that there is a "Monohelper" tool that works a bit better with XBuild...but again doesn't want to install to VS2017, at least not that I see.

    SO:  With VS2015 / 2017... is there any current Visual Studio-based toolchain configuration that works for cross-platform C# dot NET development with Mono / Linux? 


    Wednesday, April 19, 2017 4:38 PM

All replies

  • Hi,

    Welcome to MSDN forum.

    Xamarin product is not available on Linux but MonoDevelop, as far as I know there is no Visual Studio-based toolchain configuration that works for cross-platform C# dot NET development with Mono / Linux in visual studio 2017. You need build desktop software using MonoDevelop, please have a look at: http://stackoverflow.com/questions/8264323/how-to-compile-a-visual-studio-c-sharp-project-with-mono/35362534#35362534

    You can also use classic Windows Forms for this as it will run on Linux, Mac and Windows although it is an older technology.  This is standard in the .NET platform. You can also check out the following:

    mono/xwt

    GUI Toolkits | Mono

    Best regards,

    Joyce


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Thursday, April 20, 2017 10:00 AM
  • What we found works is just use "monohelper" in VS2015.  Works better than anything available for VS2017.  This will quickly get a WinForms app up and running on .Net / Mono on both Windows and Linux:

    https://marketplace.visualstudio.com/items?itemName=Dresel.MonoHelper

    There is an extension listed for VS2017 that shouldn't be on its extensions list: "mono-tools".  Try to install it for vS2017 and it says it's incompatible, if you install it anyway and accidentally hit its "start with debugger" option it hard-crashes VS2017.

    There is a mono remote debugger tool for VS2017 that sort of works.

    So I guess officially: There is no real integrated cross-platform GUI support for Linux in VS2017.

    Just the Linux C++ support, which doesn't have real GUI designer capability.

    When will Visual Studio get real support for Linux GUI cross-platform projects?

    Thursday, April 20, 2017 1:57 PM
  • Hi,

    Thank you for your update.

    I have submitted your idea to Microsoft, please check it here: https://visualstudio.uservoice.com/forums/121579-visual-studio-ide/suggestions/19001830-visual-studio-2017-c-mono-cross-platform-linux and I have voted it, if possible, please vote and comment it.

    Best regards,

    Joyce


    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Friday, April 21, 2017 6:59 AM
  • You may have a look at MDebug (https://www.mdebug.com/)
    Tuesday, September 19, 2017 8:53 PM
  • I've been using MDebug for a few weeks now, it works great!
    • Edited by Apas62 Saturday, December 30, 2017 5:29 PM
    Saturday, December 30, 2017 5:29 PM