2016-04-04 21:24:34 +12:00
2016-03-27 10:00:25 +13:00
# Setting Up the Development Environment on MacOSX
## Necessary Software
- git
- brew
- Xcode
2019-04-21 18:57:47 +12:00
- cmake (3.2.2 or later)
- Qt (5.9.2 or later)
- boost (1.55.0 or later)
2016-03-27 10:00:25 +13:00
## Building on MacOSX
2019-04-21 18:57:47 +12:00
### Download boost from https://boost.org
2016-03-27 10:00:25 +13:00
2019-04-21 18:57:47 +12:00
Download the .bz2 mac (unix if mac not specified) version 1_55_0 or later (last tested with 1_69_0)
2016-04-04 21:24:34 +12:00
2019-04-21 18:57:47 +12:00
Save for later step.
2016-04-04 21:24:34 +12:00
2019-04-26 13:38:46 +12:00
### Download and install Xcode from Apple
2016-03-27 10:00:25 +13:00
2019-04-26 13:38:46 +12:00
When downloading Xcode, you should use the appropriate version for your OS version. You can refer to the Version Comparison Table on https://en.wikipedia.org/wiki/Xcode to find out which version you should use.
2019-04-21 18:57:47 +12:00
Apple store usually provides for the most recent macOS version. For older versions, you will need to go to the Apple Developer site.
2019-04-26 13:38:46 +12:00
After installing the application, you will need to start it in order to complete the installation.
2019-04-21 18:57:47 +12:00
### Install Homebrew from https://brew.sh
Check site for any changes in installation instructions, but they will probably just be this:
1. Open a Terminal window
2. Execute the following statement:
```
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
```
### Install required software using brew
In a Terminal window, execute the following statements:
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
$ brew install glew lz4 libjpeg libpng lzo pkg-config libusb cmake git-lfs libmypaint qt
$ git lfs install
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
NOTE: This will install the latest version of QT which may not be compatible with older OS versions.
2016-04-04 21:24:34 +12:00
2019-04-26 02:37:28 +12:00
If you cannot use the most recent version, download the online installer from https://www.qt.io/download and install the appropriate `macOS` version (min 5.9.2). If installing via this method, be sure to install the `Qt Script (Deprecated)` libraries.
2016-04-04 21:24:34 +12:00
2019-04-21 18:57:47 +12:00
### Set up OpenToonz repository
2016-03-27 10:00:25 +13:00
2019-04-21 18:57:47 +12:00
These steps will put the OpenToonz repository under /Users/yourlogin/Documents.
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
$ cd ~/Documents #or where you want to store the repository#
2016-03-27 10:00:25 +13:00
$ git clone https://github.com/opentoonz/opentoonz
2019-04-21 18:57:47 +12:00
$ cd opentoonz
$ git lfs pull
$ cd thirdparty/boost
2019-04-23 16:44:21 +12:00
$ mv ~/Downloads/boost_1_69_0.tar.bz2 . #or whatever the boost filename you downloaded is#
$ tar xvjf boost_1_69_0.tar.bz2
2019-04-21 18:57:47 +12:00
$ cd ../lzo
$ cp -r 2.03/include/lzo driver
$ cd ../tiff-4.0.3
$ ./configure & & make
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
### Configure build for QT version
2019-04-26 02:37:28 +12:00
Edit the `/Users/yourlogin/Documents/opentoonz/toonz/sources/CMakeLists.txt` file at line 160 (64bit OS) or 172 (32bit OS) and modify the root path for the QT lib directory
2016-03-27 10:00:25 +13:00
2019-04-26 02:37:28 +12:00
If you installed QT using `brew` , you can get the version and path to use with: `$ brew info qt` . The lib path will look something like this: `/usr/local/Cellar/qt/5.12.2/lib`
If you downloaded the QT installer and installed to `/Users/yourlogin/Qt` , your lib path may look something like this: `~/Qt/5.12.2/clang_64/lib` or `~/Qt/5.12.2/clang_32/lib`
2016-03-27 10:00:25 +13:00
2019-04-21 18:57:47 +12:00
### Configure environment and Build OpenToonz
1. Create the build directory with the following:
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
$ cd ~/Documents/opentoonz/toonz
$ mkdir build
$ cd build
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
2. Set up build environment
2016-03-27 10:00:25 +13:00
2019-04-21 18:57:47 +12:00
To build from command line, do the following:
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
$ CMAKE_PREFIX_PATH=/usr/local/Cellar/qt/5.12.2 cmake ../sources #replace QT path with your installed QT version#
$ make
2016-03-27 10:00:25 +13:00
```
2019-04-26 13:38:46 +12:00
To build using Xcode, do the following:
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
$ sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
$ CMAKE_PREFIX_PATH=/usr/local/Cellar/qt/5.12.2 cmake -G Xcode ../sources -B. #replace QT path with your installed QT version#
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
- Open Xcode app and open project /Users/yourlogin/Documents/opentoonz/toonz/build/OpenToonz.xcodeproj
- Change `ALL_BUILD` to `OpenToonz`
- Start build with: Product -> Build
2017-08-24 21:06:59 +12:00
2019-04-21 18:57:47 +12:00
- NOTE about rebuilding in Xcode: The initial build should succeed without any errors. There after, the build will succeed but the following 3 errors can be ignored:
2017-08-24 21:06:59 +12:00
```
2019-04-21 18:57:47 +12:00
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: for: /Users/yourlogin/Documents/opentoonz/toonz/build/toonz/Debug/OpenToonz.app/Contents/MacOS/OpenToonz (for architecture x86_64) option "-add_rpath @executable_path/ ." would duplicate path, file already has LC_RPATH for: @executable_path/ .
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: for: /Users/yourlogin/Documents/opentoonz/toonz/build/toonz/Debug/OpenToonz.app/Contents/MacOS/OpenToonz (for architecture x86_64) option "-add_rpath /usr/local/Cellar/qt/5.12.2/lib/" would duplicate path, file already has LC_RPATH for: /usr/local/Cellar/qt/5.12.2/lib/
Command /bin/sh emitted errors but did not return a nonzero exit code to indicate failure
2017-08-24 21:06:59 +12:00
```
2019-04-26 13:38:46 +12:00
Side note: If you want the option to build by command line and Xcode, create a separate build directory for each.
2019-04-26 02:37:28 +12:00
2019-04-21 18:57:47 +12:00
### Create the stuff Directory
2016-03-27 10:00:25 +13:00
2019-04-21 18:57:47 +12:00
If you have installed OpenToonz on the machine already, you can skip this. Otherwise, you need to create the stuff folder with the following:
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
$ cd ~/Documents/opentoonz
2019-04-23 02:38:19 +12:00
$ sudo mkdir /Applications/OpenToonz
2019-04-21 18:57:47 +12:00
$ sudo cp -r stuff /Applications/OpenToonz/OpenToonz_stuff
2019-04-23 02:38:19 +12:00
$ sudo chmod -R 777 /Applications/OpenToonz
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
### Running the build
2016-03-27 10:00:25 +13:00
2019-04-26 02:37:28 +12:00
- If built using command line, run the following:
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
$ open ~/Documents/opentoonz/build/toonz/OpenToonz.app
2016-03-27 10:00:25 +13:00
```
2019-04-21 18:57:47 +12:00
- If built using Xcode, do the following:
- Open Scheme editor for OpenToonz: Product -> Scheme -> Edit Scheme
2019-04-23 16:44:21 +12:00
- Uncheck: Run -> Options -> Document Versions
2019-04-21 18:57:47 +12:00
- Run in Debug mode: Product -> Run
- To open with command line or from Finder window, the application is found in `/Users/yourlogin/Documents/opentoonz/toonz/build/Debug/OpenToonz.app`