diff options
Diffstat (limited to 'BUILDING.md')
| -rw-r--r-- | BUILDING.md | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/BUILDING.md b/BUILDING.md new file mode 100644 index 0000000..eeddf74 --- /dev/null +++ b/BUILDING.md @@ -0,0 +1,121 @@ +Building MrsWatson from Source +============================== + +To build MrsWatson on any platform, you will need to acquire a copy of the +VST SDK source code. Due to licensing restrictions of the VST SDK, this code +is not distributed with MrsWatson itself. It can be downloaded from +[Steinberg's Developer Page][1], and then extracted to the +`vendor/vstsdk2.4` subdirectory of the project before compiling. + +The MrsWatson source code also contains a few submodules, it is recommended +//do you know what this means? syn c th git has submodules to include other repositories into current repository ahh so is there a command to sync them +from the current repo or do I have to find them? we can try without it +that you sync the submodules before building the code. + +//I should have the cmake package +Mac OSX +------- + +To build MrsWatson on Mac OS X, you will need to have Apple's Developer +Tools installed. You can download Xcode either from Apple's developer +website or from the Mac App Store. You also need to install the command line +tools provided by Xcode, which are not installed by default. To do this, go +to Xcode's preferences, then to the downloads tab, and in "Components" you +find a button to install the command line tools. + +[Homebrew][2] is also recommended for building MrsWatson on Mac OS X. from +homebrew, you will need the CMake package, but possibly automake and +autoconf as well. See the homebrew webpage for details on installation of +packages. + +If you want to use Xcode to develop MrsWatson you will need to generate a +project file like so: + + cmake -G Xcode . + +This command will generate an Xcode project in the current directory which +you can use to compile the software as you would any other project. For +other IDE's, such as CLion, QT Creator, NetBeans, emacs, or vim, you can +generate a regular makefile to build the software like any other Unix +package. To do that you must generate the makefiles like so: + + cmake -G "Unix Makefiles" . + make + +Ninja and CCache are also supported, both tools should work "out of the box". + + +Linux +----- + +Building MrsWatson on Linux may require a few additional packages on your +computer, including those necessary to make a 32-bit build on 64-bit +machines. By default, the software is built with your native architecture, +so if you would like to make a 32-bit build on a 64-bit machine, you will +also need the following packages: + + * libstdc++ + * g++-multilib + * ia32-libs + +This is in addition to the standard build tools (gcc, g++, etc). Otherwise, +building on Linux should be a simple matter of: + + cmake . + make + make install + + +General Unix Tips +----------------- + +There are several other generators supported by CMake, you can see the list +of supported ones by running cmake -h on the command line. By default, cmake +will generate a release build configuration, which will place binaries in +the "bin" directory. If you want debuggable binaries, then you must run the +following command when you generate your build environment: + + cmake -DCMAKE_BUILD_TYPE=Debug -G "Your generator of choice" . + make clean && make + +On Unix (including both Mac OS X and Linux), the project generated by CMake +will produce both 32 and 64-bit binaries. These binaries will have the +number "64" appended to the end. Even though Mac OS X has the Universal +Binary format that could contain both architectures, two separate binaries +are shipped on this platform to avoid confusion when loading plugins. + + +Windows +------- + +On Windows, Visual Studio is used to compile the software. The MrsWatson +source code does not include a Visual Studio project, instead CMake is used +to generate Visual Studio project which can then be used to build the +software. After you've installed cmkae for Windows, you must generate the +build directory where the Visual Studio product will be placed. Unlike on +Unix, you cannot build the software from the same directory as the source +code. So generating the Visual Studio project will look something like this: + + cd c:\wherever + mkdir MrsWatson-build + cd MrsWatson-build + cmake -G "Visual Studio 11" C:\path\to\MrsWatson + +This command will generate a Visual Studio project in +`C:\wherever\MrsWatson-build` which can use to build the software. Just like +on Unix, CMake supports several different generators which can be listed by +running CMake -h. Namely, several different versions of Visual Studio are +supported, and you should pick the one which matches your installation. + +Unlike on Unix, the generated Visual Studio project will not generate both +32- and 64-bit builds of the software. Instead you must create another build +directory for the 64-bit project. That is done like so: + + cd c:\wherever + mkdir MrsWatson-build64 + cd MrsWatson-build64 + cmake -G "Visual Studio 11 Win64" C:\path\to\MrsWatson + + +[1]: http://www.steinberg.net/en/company/developer.html +[2]: http://mxcl.github.io/homebrew/ |
