Compile Mac App On Linux

  1. Install Mac App On Linux
  2. Compile Linux App On Mac
  3. Compile Mac App On Linux Computer
  4. Compile Linux Application
  5. Top Mac App
  6. Linux Compile Command

The writing of a full-featured GUI app for macOS is not covered. The article could also be used by professionals who’ve already been doing professional C on, say, a corporate Linux system.

-->

| Developer Community| System Requirements| Compatibility| Distributable Code| License Terms| Blogs| Known Issues |

Visual Studio 2017 contains many new and exciting features and IDE productivity enhancements tosupport Windows app development, cross-platform mobile development, Azure development, web and cloud development,and more. To try out Visual Studio 2017, see Visual Studio 2017 Downloads.For more information about everything that's new in this release, see theVisual Studio 2017 release notes andWhat's New in Visual Studio 2017.

For Visual Studio Code, see Visual Studio Code FAQ.
For Visual Studio 2017 for Mac, see Visual Studio 2017 for Mac Platform Targeting and Compatibility.
For Visual Studio 2017 for Mac release notes.

Compile Mac App On Linux

Installation

You can install and use Visual Studio 2017 alongsideprevious versions of Visual Studio, including Visual Studio 2015, Visual Studio 2013, and Visual Studio 2012.

Download

Click a button to download the latest version of Visual Studio 2017. For instructions on installing and updating Visual Studio 2017, see the Update Visual Studio 2017 to the most recent release. Also, see instructions on how to install offline.

Visit the visualstudio.microsoft.com/downloads page to download other Visual Studio 2017 products.

Note: Installation package size will vary depending on your current Visual Studio configuration.

System Requirements

For information on the system requirements for installing and running the Visual Studio 2017 family of products,including Team Foundation Server 2017, see the Visual Studio 2017 System Requirement page andVisual Studio 2017 for Mac Product Family System Requirements.

Feedback and Support

For support, or to submit feedback on Visual Studio, see:

Upgrade Projects to Visual Studio 2017

When following the supported upgrade paths, your Visual Studio source, solutions, and project files will continueto work; however, you should expect to make some changes to sources. While we cannot guarantee binary compatibilitybetween releases, we will do our best to document significant changes to assist you with updates.

Note

For details on how to migrate your projects to Visual Studio 2017, see Porting, Migrating, and Upgrading Visual Studio Projects.

Platform Targeting

Visual Studio provides cutting-edge tools and technologies to create apps that take advantage of thelatest platform capabilities, whether Windows, Android, iOS, or Linux. Visual Studio 2017 also targetsearlier platforms so you can create new apps or modernize existing apps that execute on earlier versionsof Windows while leveraging the enhanced development tools, quality enablement, and team collaborationcapabilities in Visual Studio 2017. For more information, see Managing references in aproject and Visual Studio Multi-TargetingOverview.

Visual Studio 2017 Support for Windows Development

The following table explains the Microsoft Windows platforms for which you can build apps by using Visual Studio 2017.

Build Apps that Run on Windows ClientsUsing Tools for Native and Managed Classic Windows Desktop DevelopmentUsing Tools for UWP App Development
Windows 10Yes
(see notes below)
Yes
(see notes below)
HoloLensNoYes
See the Windows Holographic Dev Center.
Xbox OneNot applicableYes
See the Xbox Dev Center.
Windows 8.1 (Windows 8)YesWindows Store app development is not available.
Windows 7YesNot applicable
Windows VistaYes
Remote debugging and profiling tools are not available.
Not applicable
Windows XPYes
Managed development requires using Visual Studio .NET multi-targeting. Remote debugging and profiling tools are not available.
Not applicable
Build Apps that Run on Windows PhoneUsing Tools for Native and Managed Classic Windows Desktop DevelopmentUsing Tools for UWP App Development
Windows 10 MobileNoYes
(see notes below)
Windows Phone 8.1 and earlierNoWindows Store app development is not available.
Build Apps that Run on Windows ServerUsing Tools for Native and Managed Classic Windows Desktop DevelopmentUsing Tools for UWP App Development
Windows Server 2016YesYes
(see notes below)
Windows Server 2016, Nano Server Installation OptionYes, for .NET Core and a subset of Win32
See the Nano Server Dev Center.
No
Windows Server 2012 R2YesWindows Store app development is not available.
Windows Server 2012YesWindows Store app development is not available.
Windows Server 2008 R2YesNot applicable
Windows Server 2008Yes
Remote debugging and profiling tools are not available.
Not applicable
Windows Server 2003Yes
Remote debugging and profiling tools are not available. Managed development requires using Visual Studio .NET multi-targeting and requires side-by-side installation of Visual Studio 2010. For more information, see: A Look Ahead at the Visual Studio 2012 Product Lineup and Platform Support.
Not applicable
Build Apps that Run on Windows Embedded DevicesUsing Tools for Native and Managed Classic Windows Desktop DevelopmentUsing Tools for UWP App Development
Windows 10 IoT CoreYes, for a subset of Win32 APIs
See the IoT Core API Porting Tool for information.
Yes
See the Windows IoT Dev Center for additional tools and resources.
Windows 10 IoT Mobile EnterpriseNoYes
See the Windows IoT Dev Center for additional tools and resources.
Windows 10 IoT EnterpriseYes
See the Windows IoT Dev Center for additional tools and resources.
Yes
See the Windows IoT Dev Center for additional tools and resources.
Windows Embedded 8 Standard and 8.1 IndustryYesNo
Windows Embedded Compact 2013NoNot applicable
Windows Embedded 7 (Compact, Standard, and POSReady)NoNot applicable
Windows Embedded CE 6.0 and earlierNoNot applicable
Windows XP Embedded (Including POSReady 2009, WES 2009, WEPOS)NoNot applicable

Notes

Compile Mac App On Linux
  • For support information regarding Microsoft operating systems, see Microsoft Support Lifecycle and Windows 10 Release Information.
  • For support information on Microsoft .NET Framework, see .NET Framework Support Lifecycle FAQand .NET Framework System Requirements.
  • Windows 10 Enterprise LTSB edition and Windows 10 S are not supported for development.You may use Visual Studio 2017 to build apps that run on Windows 10 LTSB and Windows 10 S. Remote debuging is supported on LTSB.
  • Universal Windows app development for all target platforms is available when Visual Studio is installed on Windows 10.
  • Universal Windows apps can be built from the command line when using Windows Server 2012 R2 or Windows Server 2016. UWP development—includingdesigning, editing, and local debugging—is not available on Windows Server. You may deploy these apps to Windows server and debug them remotely.
  • Cordova, Unity, and Xamarin can also be used for cross-platform development of Universal Windows Apps on Windows 10.

Visual Studio 2017 Support for .NET Development

Visual Studio 2017 supports development of apps that use any of the .NET implementations. Among the workloads and project types, you can find support for.NET Framework, .NET Core, Mono, and .NET Native for Universal Windows Platform (UWP). Visual Studio 2017 supports the following implementations:

  • .NET Framework versions 4.7, 4.6.2, 4.6.1, 4.6, 4.5.2, and 3.5
  • .NET Core 2.0, 1.1, and 1.0.

Note

For more information on each of these implementations, and on the common API specification .NET Standard, see .NET architectural components.

Visual Studio 2017 Support for Android Development

Visual Studio 2017 enables you to build native Android apps using Xamarin and C# or using Java/C++, and hybridAndroid apps using Apache Cordova 6.3.1 and JavaScript and TypeScript. The Visual Studio Tools for Unity andthe Unreal Engine enable Android game development. You can also use Visual Studio for Macto build Android apps using a Mac.

You can use Visual Studio setup to easily obtain the Android SDK and Android API levels 19, 21, 22, and 23.You can download additional API levels separately using the Android SDK Manager.You can also use Visual Studio Setup to obtain the Android Native Development Kit (R10E), Java SE Development Kit, and Apache Ant.

For more information, see Android development with Visual Studio andMobile App Development.

Note

For information on .NET development for Android, see .NET architectural components.

Visual Studio 2017 Support for iOS Development

Visual Studio 2017 enables you to build and debug apps for iOS by using Apache Cordova, C++, Unity, or Xamarinand a Mac configured for iOS development when using remotebuild, vcremote, the Visual Studio Tools for Unity,or the Xamarin Mac Agent. Xamarin supports iOS 7 and higher, and requires OS X 10.10 'Yosemite' or higher.Apache Cordova supports iOS 8 and higher, and requires OS X 10.9 'Mavericks' and higher. You can also useVisual Studio for Mac to build iOS apps using a Mac.

Note

For more information, see Cross-platform mobile development in Visual Studio.For information on .NET development for iOS, see .NET architectural components.

Visual Studio 2017 Support for Linux Development

Visual Studio 2017 enables you to build and debug apps for Linux using C++, Python, and Node.js.Creating C++ apps for Linux requires theVisual C++ for Linux Development extension. Creating apps with Python orNode,js, requires that you enable remote debugging on the target Linux machine. You can also create, buildand remote debug .NET Core and ASP.NET Core applications for Linux using modern languages such as C#, VB and F#.

Note

For information on .NET development for Linux, see .NET architectural components.

  • CentOS 7.1 and Oracle Linux 7.1
  • Debian 8
  • Fedora 23
  • Linux Mint 17
  • openSUSE 13.2
  • Red Hat Enterprise Linux 7.2
  • Ubuntu 14.04 and 16.04

Note

For more information see https://dot.net/core.

Visual Studio 2017 Support for macOS Development

Visual Studio 2017 enables you to build console applications and ASP.NET applications that target macOS.However, debugging is not supported. For additional macOS development tools choices, try Visual StudioCode or Visual Studio for Mac. Visual Studio Code provides a streamlined,extensible developer tool experience for macOS. Visual Studio for Macprovides a feature-rich IDE that enables you to build native macOS apps, including ASP.NET, using C#.

Note

For information on .NET development forMacOS, see .NET architectural components.

Other Platforms and Technologies

Visual Studio 2017 also supports the following platforms and technologies. For more information, seehttps://visualstudio.microsoft.com/vs/features/.

  • Apache Ant
  • Azure web apps and connected services, including Azure Data Lake
  • Docker
  • PowerShell
  • Python and Python IoT tools
  • Web Development with ASP.NET, HTML5/CSS3, JavaScript, Node.js, Python, or TypeScript

Compatibility with Previous Releases

.NET Framework

.NET 4.7 is is a highly compatible in-place update of .NET 4, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, and 4.6.2.

Note

For more information, see the Migration Guide to the .NET Framework 4.7, 4.6, and 4.5.

Team Explorer and Team Foundation Server

Team Explorer for Visual Studio 2017 will connect to Team Foundation Server 2017, Team Foundation Server 2015,Team Foundation Server 2013, Team Foundation Server 2012, and Team Foundation Server 2010 SP1.

Silverlight

Silverlight projects are not supported in this version of Visual Studio. To maintain Silverlight applications,continue to use Visual Studio 2015.

Compile Mac App On Linux

Windows Store and Windows Phone apps

Projects for Windows Store 8.1 and 8.0, and Windows Phone 8.1 and 8.0 are not supported in this release. Tomaintain these apps, continue to use Visual Studio 2015. To maintain Windows Phone 7.x projects, use Visual Studio 2012.

Top of Page
I am a new Linux user and student who used to write C or C++ programs on MS-Windows. Now, I am using Ubuntu Linux. How can I compile a C or C++ program on Linux operating systems using bash Terminal application?
To compile a C or C++ program on any Linux distro such as Ubuntu, Red Hat, Fedora, Debian and other Linux distro you need to install:
[donotprint][/donotprint]
ADVERTISEMENTS

  1. GNU C and C++ compiler collection
  2. Development tools
  3. Development libraries
  4. IDE or text editor to write programs

Step #1: Install C/C++ compiler and related tools

If you are using Fedora, Red Hat, CentOS, or Scientific Linux, use the following yum command to install GNU c/c++ compiler:
# yum groupinstall 'Development Tools'
If you are using Debian or Ubuntu Linux, type the following apt-get command to install GNU c/c++ compiler:
$ sudo apt-get update
$ sudo apt-get install build-essential manpages-dev

Install Mac App On Linux

Step #2: Verify installation

Type the following command to display the version number and location of the compiler on Linux:
$ whereis gcc
$ which gcc
$ gcc --version

Sample outputs:

How to Compile and Run C/C++ program on Linux

Create a file called demo.c using a text editor such as vi, emacs or joe:

How do I compile the program on Linux?

Use any one of the following syntax to compile the program called demo.c:

OR

OR

In this example, compile demo.c, enter:

OR

If there is no error in your code or C program then the compiler will successfully create an executable file called demo in the current directory, otherwise you need fix the code. To verify this, type:
$ ls -l demo*

How do I run or execute the program called demo on Linux?

Simply type the the program name:
$ ./demo
OR
$ /path/to/demo
Samples session:

Compiling and running a simple C++ program

Create a program called demo2.C as follows:

To compile this program, enter:

To run this program, type:

How do I generate symbolic information for gdb and warning messages?

The syntax is as follows C compiler:
cc -g -Wall input.c -o executable
The syntax is as follows C++ compiler:
g++ -g -Wall input.C -o executable

How do I generate optimized code on a Linux machine?

The syntax is as follows C compiler:
cc -O input.c -o executable
The syntax is as follows C++ compiler:
g++ -O -Wall input.C -o executable

How do I compile a C program that uses math functions?

The syntax is as follows when need pass the -lm option with gcc to link with the math libraries:
cc myth1.c -o executable -lm

How do I compile a C++ program that uses Xlib graphics functions?

The syntax is as follows when need pass the -lX11 option with gcc to link with the Xlib libraries:
g++ fireworks.C -o executable -lX11

How do I compile a program with multiple source files?

Compile Linux App On Mac

The syntax is as follows if the source code is in several files (such as light.c, sky.c, fireworks.c):
cc light.c sky.c fireworks.c -o executable
C++ syntax is as follows if the source code is in several files:
g++ ac.C bc.C file3.C -o my-program-name
See gcc(1) Linux and Unix man page for more information.

This entry is 7

Compile Mac App On Linux Computer

of 13 in the

Compile Linux Application

Linux GNU/GCC Compilers Tutorial

Top Mac App

series. Keep reading the rest of the series:

Linux Compile Command

  1. HowTo: Compile And Run a C/C++ Code In Linux