Compiling pyo from sources¶
Here is how you can compile pyo from sources on Linux and MacOS (if you are interested in the adventure of compiling pyo from sources on Windows, you can take a look at my personal notes in windows-10-64bit-build-routine.txt).
To compile pyo with all its features, you will need the following dependencies:
git (if you want the latest sources)
Please note that under MacOS you will need to install the Apple’s developer tools to compile pyo.
You can download pyo’s sources by checking out the source code here:
git clone https://github.com/belangeo/pyo.git
Once you have all the required dependencies, go in pyo’s directory:
And build the library:
sudo python setup.py install
You can customize your compilation by giving some flags to the command line.
If you want to be able to use coreaudio (MacOS):
If you want JACK support (Linux, MacOS):
If you want to be able to use a 64-bit pyo (All platforms, this is the sample resolution, not the architecture), this will build both single and double precisions:
If you want to disable most of messages printed to the console:
If you want to compile external classes defined in pyo/externals folder:
By default, debug symbols are off. If you want to compile pyo with debug symbols:
By default, optimizations are activated. If you want to compile pyo without optimizations:
If you want to compile pyo with minimal dependencies (mostly for integrated use in a host environment):
This will compile pyo without portaudio, portmidi and liblo support.
In the ./scripts folder, there is some alternate scripts to simplify the compilation process a little bit. These scripts will compile pyo for the version of python pointed to by the command python.
To compile both 32-bit and 64-bit resolutions on linux with jack support:
sudo sh scripts/compile_linux_withJack.sh
To compile both 32-bit and 64-bit resolutions on macOS without Jack support:
sudo sh scripts/compile_OSX.sh
To compile both 32-bit and 64-bit resolutions on macOS with Jack support (Jack headers must be present on the system):
sudo sh scripts/compile_OSX_withJack.sh
Debian & Ubuntu (apt-get)¶
Under Debian & Ubuntu you can type the following commands to get pyo up and running.
For Python 3.6 and higher¶
sudo apt-get install libjack-jackd2-dev libportmidi-dev portaudio19-dev liblo-dev libsndfile-dev sudo apt-get install python3-dev python3-tk python3-pil.imagetk python3-pip git clone https://github.com/belangeo/pyo.git cd pyo sudo python3 setup.py install --use-jack --use-double
If you want to be able to use all of pyo’s gui widgets, you will need wxPython Phoenix 4.1.0.
To install wxPython with pip on linux, follow the instructions on the wxPython’s downloads page.
Under macOS, it is very simple to build pyo from sources with the Homebrew package manager.
The first step is to install the official Python from python.org.
Second step, if you want to be able to use all of pyo’s gui widgets, you will need wxPython Phoenix. Install with pip:
python3 -m pip install --user wxPython
The third step is to install Homebrew.
Finally, in a terminal window, install pyo’s dependencies, clone and build pyo:
brew install liblo libsndfile portaudio portmidi git clone https://github.com/belangeo/pyo.git cd pyo python setup.py install --use-coreaudio --use-double