Difference between revisions of "Mac OS X"
(20 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | µGFX can be run natively on a | + | µGFX can be run natively on a MacOS system. This simplifies the process of developing your embedded GUI application a lot. |
− | + | ||
− | + | The MacOS port has been tested successfully on MacOS 10.10, 10.11, 10.12 and 11.1. | |
− | + | ||
− | + | ||
+ | == Dependencies == | ||
+ | Make sure you got the following things installed: | ||
+ | * [http://clang.llvm.org/ clang] (by installing [https://developer.apple.com/xcode/ Xcode]) | ||
+ | * [https://www.libsdl.org/ SDL2] (by installing via: <code>brew install sdl2</code>) | ||
− | == | + | == Makefile == |
− | + | Copy the makefile that can be found in <code>/boards/base/OSX/example/</code> to your project directory. | |
+ | You need to set the <code>OSX_SDK</code> and <code>OSX_ARCH</code> variables. | ||
− | + | === OSX_SDK === | |
− | < | + | The <code>OSX_SDK</code> variable needs to contain the path to the OS X SDK. The path can be found by executing <code>xcodebuild -sdk -version</code> in the terminal: |
− | + | <source lang="bash" highlight="4"> | |
− | + | TecMac:osx joel.bodenmann$ xcodebuild -sdk -version | |
+ | MacOSX10.11.sdk - OS X 10.11 (macosx10.11) | ||
+ | SDKVersion: 10.11 | ||
+ | Path: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk | ||
+ | PlatformVersion: 1.1 | ||
+ | PlatformPath: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform | ||
+ | ProductBuildVersion: 15E60 | ||
+ | ProductCopyright: 1983-2016 Apple Inc. | ||
+ | ProductName: Mac OS X | ||
+ | ProductUserVisibleVersion: 10.11.4 | ||
+ | ProductVersion: 10.11.4 | ||
+ | </source> | ||
− | + | In our case we set the <code>OSX_SDK</code> variable as follows: | |
− | + | <source lang="make"> | |
− | + | OSX_SDK = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk | |
+ | </source> | ||
− | + | === OSX_ARCH === | |
− | + | The <code>OSX_ARCH</code> variable is used to specify on which earliest/oldest version of MacOS X the executable will be able to run on. Usually it's enough to just set it to the version of OS X that you are running which you can find my executing <code>sw_vers</code> in a terminal: | |
− | + | <source lang="bash" highlight="3"> | |
− | + | TecMac:osx joel.bodenmann$ sw_vers | |
− | + | ProductName: Mac OS X | |
− | + | ProductVersion: 10.11.4 | |
− | + | BuildVersion: 15E65 | |
− | + | </source> | |
− | + | In our case we are running OS X version 10.11: | |
− | + | <source lang="make"> | |
− | + | OSX_ARCH = -mmacosx-version-min=10.11 | |
− | + | </source> | |
− | + | For more information about the <code>macosx-version-min</code> option, please refer to the corresponding compiler documentation. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | </ | + |
Latest revision as of 11:33, 26 July 2021
µGFX can be run natively on a MacOS system. This simplifies the process of developing your embedded GUI application a lot.
The MacOS port has been tested successfully on MacOS 10.10, 10.11, 10.12 and 11.1.
Contents
Dependencies
Make sure you got the following things installed:
Makefile
Copy the makefile that can be found in /boards/base/OSX/example/
to your project directory.
You need to set the OSX_SDK
and OSX_ARCH
variables.
OSX_SDK
The OSX_SDK
variable needs to contain the path to the OS X SDK. The path can be found by executing xcodebuild -sdk -version
in the terminal:
TecMac:osx joel.bodenmann$ xcodebuild -sdk -version MacOSX10.11.sdk - OS X 10.11 (macosx10.11) SDKVersion: 10.11 Path: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdkPlatformVersion: 1.1 PlatformPath: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform ProductBuildVersion: 15E60 ProductCopyright: 1983-2016 Apple Inc. ProductName: Mac OS X ProductUserVisibleVersion: 10.11.4 ProductVersion: 10.11.4
In our case we set the OSX_SDK
variable as follows:
OSX_SDK = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk
OSX_ARCH
The OSX_ARCH
variable is used to specify on which earliest/oldest version of MacOS X the executable will be able to run on. Usually it's enough to just set it to the version of OS X that you are running which you can find my executing sw_vers
in a terminal:
TecMac:osx joel.bodenmann$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.11.4BuildVersion: 15E65
In our case we are running OS X version 10.11:
OSX_ARCH = -mmacosx-version-min=10.11
For more information about the macosx-version-min
option, please refer to the corresponding compiler documentation.