diff options
author | Vojtech Kral <vojtech@kral.hk> | 2019-01-10 15:49:06 +0300 |
---|---|---|
committer | Vojtech Kral <vojtech@kral.hk> | 2019-01-10 16:02:13 +0300 |
commit | e5062e866206d05230878b09d51a4b5eaaa7527c (patch) | |
tree | 1fb1445eec39ac7a4ac49307a749df051ac31155 /doc | |
parent | fcf41c7eb8b7617cbbf8bcfe2ecf9c7bda7c579e (diff) |
deps: Use wxWidgets 3.1.2 on Mac, use system SDK by default, various bugfixes
Diffstat (limited to 'doc')
-rw-r--r-- | doc/How to build - Mac OS.md | 47 |
1 files changed, 24 insertions, 23 deletions
diff --git a/doc/How to build - Mac OS.md b/doc/How to build - Mac OS.md index a2d7cf7fe..a1c8d9049 100644 --- a/doc/How to build - Mac OS.md +++ b/doc/How to build - Mac OS.md @@ -1,26 +1,7 @@ # Building Slic3r PE on Mac OS -To build Slic3r PE on Mac OS, you will need to install XCode and an appropriate SDK. -You will also need [CMake](https://cmake.org/) installed (available on Brew) and possibly git. - -Currently Slic3r PE is built against the Mac OS X SDK version 10.9. -Building against older SDKs is unsupported. Building against newer SDKs might work, -but there may be subtle issues, such as dark mode not working very well on Mojave or other GUI problems. - -You can obtain the SDK 10.9 for example [in this repository](https://github.com/phracker/MacOSX-SDKs). -If you don't already have the 10.9 version as part of your Mac OS installation, please download it -and place it into a reachable location. - -The default location for Mac OS SDKs is: - - /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/ - -Wherever the 10.9 SDK is, please note down its location, it will be required to build Slic3r. - -On my system, for example, the path to the SDK is - - /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk +To build Slic3r PE on Mac OS, you will need to install XCode, [CMake](https://cmake.org/) (available on Brew) and possibly git. ### Dependencies @@ -30,11 +11,16 @@ Use the following commands to build the dependencies: mkdir build cd build - cmake .. -DDEPS_OSX_SYSROOT=<path to the 10.9 SDK> + cmake .. + make This will create a dependencies bundle inside the `build/destdir` directory. You can also customize the bundle output path using the `-DDESTDIR=<some path>` option passed to `cmake`. +**Warning**: Once the dependency bundle is installed in a destdir, the destdir cannot be moved elsewhere. +(This is because wxWidgets hardcode the installation path.) + + ### Building Slic3r If dependencies built without an error, you can proceed to build Slic3r itself. @@ -42,7 +28,7 @@ Go back to top level Slic3r sources directory and use these commands: mkdir build cd build - cmake .. -DCMAKE_PREFIX_PATH="$PWD/../deps/build/destdir/usr/local" -DCMAKE_OSX_SYSROOT=<path to the 10.9 SDK> + cmake .. -DCMAKE_PREFIX_PATH="$PWD/../deps/build/destdir/usr/local" The `CMAKE_PREFIX_PATH` is the path to the dependencies bundle but with `/usr/local` appended - if you set a custom path using the `DESTDIR` option, you will need to change this accordingly. **Warning:** the `CMAKE_PREFIX_PATH` needs to be an absolute path. @@ -56,7 +42,22 @@ where `N` is the number of CPU cores, so, for example `make -j4` for a 4-core ma Alternatively, if you would like to use XCode GUI, modify the `cmake` command to include the `-GXcode` option: - cmake .. -GXcode -DCMAKE_PREFIX_PATH="$PWD/../deps/build/destdir/usr/local" -DCMAKE_OSX_SYSROOT=<path to the 10.9 SDK> + cmake .. -GXcode -DCMAKE_PREFIX_PATH="$PWD/../deps/build/destdir/usr/local" and then open the `Slic3r.xcodeproj` file. This should open up XCode where you can perform build using the GUI or perform other tasks. + +### Note on Mac OS X SDKs + +By default Slic3r builds against whichever SDK is the default on the current system. + +This can be customized. The `CMAKE_OSX_SYSROOT` option sets the path to the SDK directory location +and the `CMAKE_OSX_DEPLOYMENT_TARGET` option sets the target OS X system version (eg. `10.14` or similar). +Note you can set just one value and the other will be guessed automatically. +In case you set both, the two settings need to agree with each other. (Building with a lower deployment target +is currently unsupported because some of the dependencies don't support this, most notably wxWidgets.) + +Please note that the `CMAKE_OSX_DEPLOYMENT_TARGET` and `CMAKE_OSX_SYSROOT` options need to be set the same +on both the dependencies bundle as well as Slic3r PE itself. + +Official Mac Slic3r builds are currently built against SDK 10.9 to ensure compatibility with older Macs. |