These instructions are for building Vuo Base, Vuo Compiler, Vuo Renderer, Vuo Runtime, Vuo Editor, and the built-in Vuo Nodes and Types from source code.
Vuo's source code is available so you can learn about how Vuo works, play with it, and maybe even help develop Vuo.
You do not need to build Vuo from source if you want to:
- run the Vuo editor application. The Vuo editor application is available as a separate download.
- develop an application that uses Vuo. Instead, download the Vuo SDK, and follow the instructions on api.vuo.org under the section "Developing Applications that use Vuo".
- develop nodes and types for Vuo. Instead, download the Vuo SDK, and follow the instructions on api.vuo.org under the section "Developing Node Classes and Port Types".
Vuo uses the Qt Framework's translation system in its source code, and POEditor to manage translations online. Sign up here to help translate Vuo: https://poeditor.com/join/project/KJuvGOpptm
Install a recent version of Xcode.
Launch Xcode and accept the license agreement.
Install Command Line Tools for Xcode:
- Go to https://developer.apple.com/download/more/
- In the search box, enter your Xcode version.
- In the search results, locate and download the Command Line Tools.
- Open the downloaded package and follow the prompts.
Install Homebrew:
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"
brew doctorReview the results of brew doctor and fix any problems it finds, then install the dependencies:
cdto the Vuo source code folder.brew bundle
pip3 install --user conan==1.59.0- Add the directory in which
conanwas just installed to the shell's command search path:python3 -c 'import site; print(site.getuserbase())'- Take the output of that command and append
/binto get the directory containingconan(e.g./Users/me/Library/Python/3.10/bin). - In
~/.zshrc,~/.profile, or similar, add that directory to your shell'sPATHvariable.
cdto the Vuo source code folder.mkdir buildcd build- On macOS:
conan config install https://vuo.org/sites/default/files/conan-macos.zip- Conan may output
WARN: Remotes registry file missing, creating default one— that's OK.
- On Linux:
conan config install https://vuo.org/sites/default/files/conan-linux.zip
conan install ..
To build the user manual (PDF, HTML, or MacHelp variants), install TeX from https://www.tug.org/mactex/ .
To be able to run TestBuildSystem, install Behat following the instructions on https://docs.behat.org/en/latest/quick_start.html#installation. Add its directory to your shell's PATH variable.
First, generate the makefiles:
mkdir build
cd build
cmake -G Ninja ..Build:
ninjaRun Vuo Editor:
ninja go…or open the build/bin folder in Finder and double-click Vuo.app.
Run the command-line tools:
bin/vuo-compile --help
bin/vuo-link --help
bin/vuo-debug --helpOptionally, build and run the tests:
ninja VuoTest
# Consider adding this alias to your ~/.bashrc :
alias ctest='ctest --parallel --output-on-failure --progress'
ctest # Run all tests (takes a few hours)
ctest -N # List the names of all tests
ctest -R … # Run tests whose name matches the specified regex (case-sensitive)
ctest -R vuo.math.keep.average # Run tests for a node
ctest -R VuoAnchor # Run tests for a type
ctest -R PlayBluesOrgan # Run tests for an example composition
ctest -R TestModules.testType:VuoAnchor # Run a single test datumOptionally, build the documentation:
cmake -G Ninja .. -DVUO_DOCUMENTATION=ON
ninja VuoManualPDF_en_highContrast # Build the manual as a PDF
ninja VuoManualHTML # Build the manual as HTML
ninja VuoManualMacHelp # Build the manual as a MacHelp Book
ninja VuoDoxygen # Build the SDK documentationVuo's build system includes some shortcuts to make development more efficient.
Allows you to make changes to VuoBase and VuoCompiler without rebuilding all nodes and types (but you're responsible for keeping track of whether nodes and types need to be rebuilt). Saves several minutes per edit-compile-test cycle.
cmake -G Ninja .. -DVUO_COMPILER_DEVELOPER=ON
cmake -G Ninja .. -DVUO_COMPILER_DEVELOPER=OFFAllows you to make changes to nodes, types, and libraries without rebuilding the Vuo.framework cache. Saves about 30 seconds per edit-compile-test cycle (but compositions take longer to start up initially).
cmake -G Ninja .. -DVUO_NODE_DEVELOPER=ON
cmake -G Ninja .. -DVUO_NODE_DEVELOPER=OFF