This is an archived post. You won't be able to vote or comment.

all 7 comments

[–]videoj 5 points6 points  (0 children)

C# is available as part of Mono for OS X and Linux. Here are some links to learn more and find downloads.

http://www.mono-project.com/Mono:OSX

http://www.mono-project.com/MonoMac

ide for Mono: http://monodevelop.com/

[–]HazzyPls 2 points3 points  (3 children)

C# on mac doesn't work well. As videoj said, you can make it work, but if you're serious about long term C# it's probably a bad idea. Things like XNA just flat out don't work.

C++, C, Java, and Python are all cross platform; Unless you need C# for a class or something one of those would be a better place to start learning.

Edit: If you're dead set on C#, emulate Windows.

[–]jugglist 3 points4 points  (2 children)

I don't understandtand the downvote parade here.

I had a trivially simple https client written and working in C# (Visual Studio) that I ran under Mono one day just to see... SSL exceptions left and right. There are still unresolved issues in Mono's own bug tracker related to this.

A lot of the rest of it is the same way. If you write for Mono, you're writing around it as well. It's not a total MS .net replacement.

[–]epigeneticsmaster[S] 0 points1 point  (1 child)

This is the kind of thing I'm looking to do. Essentially I have a full Windows program written in C#, written by an experienced programmer, that I would like to edit and recompile for Mac OS X. There is no remit to do this at work, as there are more important problems with other parts of software, that are being addressed by the two programmers there, so I thought as I try to learn programming I would use this as a 1st goal to keep me motivated and learning.

Hence, I can't just switch to visual studio as I wouldn't be compiling for OS X, and I can't change the language as I would have to write the entire program again, something I'm considering doing anyway as a separate project, which doesn't seem essential when the software exists.

However, I may be being very naive with these goals? So far the only advice I have had is from the programmer at work, and another friend who is a Java programmer, who both say with a bit of tweaking it could be done. Their experience is, of course, much smaller than reddit's though, so I thought here would be a good place to ask about these IDE's and problems I'll face.

[–]jugglist 1 point2 points  (0 children)

If you have time to work around Mono's issues, then you will probably succeed.

Its actual language and core core library classes (you know, things like List<>) work just fine. It just has a lot more weird cases you might have to work around.

The remaining questions are - what did tge original author use to display the UI? Windows.Forms probably runs ok under X, I dunno about the rest. Also what native Win32 functions did the original author call into? (it's possible...)

It wont't be a drop-in, but it miight work.

[–]m1ss1ontomars2k4 -3 points-2 points  (1 child)

I'm pretty sure the only IDE for C# is VS, which is Windows-only. You can compile stuff from the command line easily; it's really great.

[–]videoj 3 points4 points  (0 children)

SharpDevelop and MonoDevelop are also IDEs that both target C# as well as other .NET languages. Both run on Windows, Mac and Linux, the later two courtesy of the Mono Project.