![](/uploads/1/2/5/8/125855927/705590599.jpg)
Development on Mac OS X is mostly done with the Developer Tools provided by Apple (Xcode).
Hello, I'm just starting a class with C# and need a good compiler for it. I have an xp partition through bootcamp with msdn programs on it, but i dislike rebooting to it, or going to it through VMWare fusion.
The most common option on Mac OS X 10.6 is to install Xcode 3.2 (3.2.6 is the most recent version). This version comes with several compilers (Apple GCC 4.0, Apple GCC 4.2, Apple LLVM/clang), but none of them is able to compile C++11 code.
It is possible to get a more recent compiler on Mac OS X 10.6 by installing the Snow Leopard build of Xcode 4.2. Sadly, this version is only available for paying developer accounts. But more importantly, this version only has partial C++11 support, which is not good enough.
In summary: the Xcode versions that support Mac OS X 10.6 do not provide a modern C++ compiler that is able to compile the C++11 source code of the CMaNGOS project.
Therefore, we suggest to install a recent versions of GCC (this guide uses GCC 4.8.5). This toolchain can be installed next to an existing Xcode installation, so you can continue to use Xcode as before, while the new GCC can be used to build the CMaNGOS sources.
You will need about 3 GB of free disk space for the entire process. Once installed, you can remove the temporary files and reclaim most of this disk space again.
We're assuming that you have a working Xcode 3.2 installation, with the command line tools installed.
Open the Terminal application, and follow the steps below to install GCC 4.8.5.
1. Create a temporary directory for GCC's sources and build.
2. Download the GCC 4.8.5 sources.
3. Download and verify the source's signature [optional]
It's rather unlikely, but if you know you have gpg installed, you can download the relevant signatures to verify the integrity of the GCC source tarball. If you trust the download from the previous step, feel free to skip this step.
4. Extract the sources.
5. Download additional requirements for GCC.
GCC requires some additional packages to build, so we'll make sure these are available in GCC's source tree. Note that different GCC versions might require different versions of these packages, so if you're building a different version of GCC than 4.8.5, please check its requirements and adjust the commands below as needed.
6. Create a build directory for GCC next to its source tree.
7. Run GCC's configure step.
We're assuming that you have Xcode 3.2 installed in /Applications. Please verify that the path to Xcode's SDKs directory is correct! We're also telling the configure step to install GCC in a directory 'toolchains/gcc-4.8.5'. If you prefer to install GCC in a different folder, this is the time to change it.
8. Build GCC.
Assuming the previous step was successful, build GCC now. This might take a while.
9. Install GCC.
![Compiler Compiler](/uploads/1/2/5/8/125855927/882030892.jpg)
If all commands were successful, you now have a C++11 compiler capable of building CMaNGOS on your system!
Now is a good time to do a quick test and verify that you can actually run it (change the path accordingly if you've changed the installation folder in step 7):
If GCC prints its version, you can clean up the temporary files and folders if you want, by deleting the 'src' folder in your home folder.
-->Visual Studio for Mac can be used to build applications and create assemblies during the development of your project. It's important to build your code often to allow you to quickly identify type mismatches, erroneous syntax, misspelled keywords, and other compile-time errors. By building then debugging, you can also find and fix run-time errors such as logic, IO, and divide-by-zero errors.
A successful build means the source code contains correct syntax and all static references to libraries, assemblies, and other components can resolve. The build process produces an application executable. This executable may then be tested via debugging and different kinds of manual and automated tests to validate code quality. After your application is fully tested, you can compile a release version to deploy to your customers.
On the Mac, you can use any of the following methods to build your application: Visual Studio for Mac, MSBuild command-line tools, or Azure Pipelines.
Build Method | Benefits |
---|---|
Visual Studio for Mac | - Create builds immediately and test them in a debugger. - Run multi-processor builds for C# projects. - Customize different aspects of the build system. |
MSBuild command line | - Build projects without installing Visual Studio for Mac. - Run multi-processor builds for all project types. - Customize most areas of the build system. |
Azure Pipelines | - Automate your build process as part of a continuous integration/continuous delivery pipeline. - Apply automated tests with every build. - Employ virtually unlimited cloud-based resources for build processes. - Modify the build workflow and create build activities to perform deeply customized tasks. |
The documentation in this section goes into further details of the IDE-based build process. For more information about building applications via the command line, see MSBuild. For details on building applications with Azure Pipelines, see Azure Pipelines.
Note
This topic applies to Visual Studio for Mac. For Visual Studio on Windows, see Compile and build in Visual Studio.
Building from the IDE
Visual Studio for Mac lets you create and run builds instantly, while still giving you control over build functionality. When you create a project, Visual Studio for Mac defines a default build configuration that sets the context for builds. You can edit default build configurations and also create your own. Creating or modifying these configurations will automatically update the project file, which is then used by MSBuild to build your project.
For more information regarding how to build projects and solutions in the IDE, see the Building and cleaning Projects and Solutions guide.
Visual Studio for Mac can also be used to do the following:
- Change the output path. This is edited in your Project's options:
- Change the verbosity of the build output:
- Add Custom Commands before, during, or after Building or Cleaning:
See also
![](/uploads/1/2/5/8/125855927/705590599.jpg)