OlaOutput Build Instructions
This describes how to build a 64bit version of the OlaOutput MAX/MSP plugin. Building a 32bit plugin is left as an exercise for the reader.
Download the Max SDK
Download the MAX/MSP SDK from https://cycling74.com/downloads/sdk/. Extract the zip file.
Follow the instructions for installing OLA. The easiest way is to install using MacPorts, which will install into the /opt/local path.
Clone the OlaOutput Git Repo
Clone the git repo.
Move the olaoutput directory under the Max SDK directory from the zip file. It should now look something like:
simon:~/Downloads/max-sdk-7.0.3 $ ls -l total 12016 [email protected] 1 simon 5000 516 Apr 30 05:38 MaxAPI-7.0.3.html [email protected] 1 simon 5000 6137127 Apr 30 05:38 MaxAPI-7.0.3.pdf [email protected] 1 simon 5000 265 Apr 30 05:38 README.md [email protected] 105 simon 5000 3570 Apr 30 05:38 help [email protected] 831 simon 5000 28254 Apr 30 05:38 html drwxr-xr-x 3 simon 5000 102 May 1 22:37 max_build drwxr-xr-x 9 simon 5000 306 May 1 22:36 olaoutput [email protected] 1 simon 5000 214 Apr 30 05:38 package-info.json [email protected] 15 simon 5000 510 Apr 30 05:38 source
Start XCode and open the olaoutput/olaoutput/olaoutput.xcodeproj file. You should see something like the screenshot below.
Note that XCode can't find commonsyms.c or libprotobuf.8.dylib. Click on commonsyms.c on the left, then in the right panel click on the folder icon and navigate to source/c74support/max-includes/common/commonsyms.c .
For libprotobuf.8.dylib, it's a similar story, click on the folder icon and then select /opt/local/lib/libprotobuf.9.dylib. If you didn't use MacPorts to install OLA, the protobuf library may be in a different location.
Next you'll need to fix the C74SUPPORT path. Click on the 'olaoutput project' in the left pane, then choose 'Build Settings'. Set C74SUPPORT to the correct path (see screenshot).
Finally change the dropdown in the center pane from 'max-external' to olaoutput. Then under build settings remove i386 from the list of Valid Architectures.
At this point the build should succeed. The .mxo file will be in the max_build directory under the MAX SDK directory.
The plugin will only work on machines where the OLA libraries are installed in the same paths. This means you can build a plugin on a machine where OLA was installed from a tarball and then expect it to work on a machine where OLA was installed using MacPorts.
If you want to build a 386 (32-bit) version, you'll need to build all the MacPorts software with i386 support. See the build_arch variable.