You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

README.md 3.7KB

7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. # Rack
  2. *Rack* is the engine for the VCV open-source virtual modular synthesizer.
  3. ![Rack screenshot](https://vcvrack.com/images/screenshot.png)
  4. This README includes instructions for building Rack from source. For information about the software, go to https://vcvrack.com/.
  5. ## The [Issue Tracker](https://github.com/VCVRack/Rack/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc) *is* the official developer's forum
  6. Bug reports, feature requests, and even *questions/discussions* are welcome on the GitHub Issue Tracker for all VCVRack repos.
  7. However, please search before posting to avoid duplicates, and limit to one issue per post.
  8. Please vote on feature requests by using the Thumbs Up/Down reaction on the first post.
  9. I rarely accept code contributions to Rack itself, so please notify me in advance if you wish to send a pull request.
  10. ## Setting up your development environment
  11. Rack's dependencies (GLEW, glfw, etc) do not need to be installed on your system, since specific versions are compiled locally during the build process. However, you need proper tools to build these dependencies.
  12. ### Mac
  13. Install [Xcode](https://developer.apple.com/xcode/).
  14. Using [Homebrew](https://brew.sh/), install the build dependencies.
  15. ```
  16. brew install git wget cmake autoconf automake libtool
  17. ```
  18. ### Windows
  19. Install [MSYS2](http://www.msys2.org/) and launch the MinGW 64-bit shell (not the default MSYS shell).
  20. ```
  21. pacman -S git wget make tar unzip zip mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake autoconf automake mingw-w64-x86_64-libtool
  22. ```
  23. ### Linux
  24. On Arch Linux:
  25. ```
  26. pacman -S git wget gcc make cmake tar unzip zip curl
  27. ```
  28. On Ubuntu 16.04:
  29. ```
  30. sudo apt install git curl cmake libx11-dev libglu1-mesa-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev zlib1g-dev libasound2-dev libgtk2.0-dev libjack-jackd2-dev
  31. ```
  32. ## Building
  33. *If the build fails for you, please report the issue with a detailed error message to help the portability of Rack.*
  34. Clone this repository with `git clone https://github.com/VCVRack/Rack.git` and `cd Rack`.
  35. Make sure there are no spaces in your path, as this breaks many build systems.
  36. Clone submodules.
  37. git submodule update --init --recursive
  38. Build dependencies locally.
  39. You may use make's `-j$(nproc)` flag to parallelize builds across all your CPU cores.
  40. make dep
  41. You may use `make dep RTAUDIO_ALL_APIS=1` to attempt to build with all audio driver APIs enabled for your operating system, although this is unsupported.
  42. You should see a message that all dependencies built successfully.
  43. Build Rack.
  44. make
  45. Run Rack.
  46. make run
  47. ## Building plugins
  48. Be sure to check out and build the version of Rack you wish to build your plugins against.
  49. You must clone the plugin in Rack's `plugins/` directory, e.g.
  50. cd plugins
  51. git clone https://github.com/VCVRack/Fundamental.git
  52. Clone submodules.
  53. cd Fundamental
  54. git submodule update --init --recursive
  55. Build plugin.
  56. make
  57. ## Licenses
  58. All **source code** in this repository is licensed under [BSD-3-Clause](LICENSE.txt) by [Andrew Belt](https://andrewbelt.name/).
  59. **Component Library graphics** in `res/ComponentLibrary` are licensed under [CC BY-NC 4.0](https://creativecommons.org/licenses/by-nc/4.0/) by [Grayscale](http://grayscale.info/). Commercial plugins must request a commercial license to use Component Library graphics by emailing contact@vcvrack.com.
  60. **Core** panel graphics in `res/Core` are copyright © 2017 Grayscale. You may not create derivative works of Core panels.
  61. The **VCV logo and icon** are copyright © 2017 Andrew Belt and may not be used in derivative works.
  62. The **"VCV" name** is trademarked and may not be used for unofficial products. However, it is acceptable to use the phrase "for VCV Rack" for promotion of your plugin. For all other purposes, email contact@vcvrack.com.