Skip to content

Instantly share code, notes, and snippets.

@glenpike
Last active September 15, 2021 16:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save glenpike/84999f345f898071b318369d14f4e3bd to your computer and use it in GitHub Desktop.
Save glenpike/84999f345f898071b318369d14f4e3bd to your computer and use it in GitHub Desktop.
Building Bespokesynth on RPi 400
# Clone repo
git clone https://github.com/awwbees/BespokeSynth.git
cd BespokeSynth/Builds/LinuxMakefile
make CXX=g++ -j4
# May need extra dependencies installing on the RPi
# The linux Makefile generated by Juce doesn't necessarily work out of the box
# ...there seems to be misconfigured paths for including the OpenGL stuff - get errors like 'GL_RGB was not declared in this scope' when it tries to build the HelpDisplay stuff
# Tried changing the path in the Makefile for libs to /usr/lib, but did not work
# Clone JUCE repo
git clone https://github.com/juce-framework/JUCE.git
# Update Pi (because of weird libwebkit issue needed sudo apt update && sudo apt full-upgrade)
# Install JUCE deps - https://github.com/juce-framework/JUCE/blob/master/docs/Linux%20Dependencies.md
# (From this forum: https://forum.juce.com/t/list-of-juce-dependencies-under-linux/15121/57)
```
sudo apt install libasound2-dev libjack-jackd2-dev \
ladspa-sdk \
libcurl4-openssl-dev \
libfreetype6-dev \
libx11-dev libxcomposite-dev libxcursor-dev libxcursor-dev libxext-dev libxinerama-dev libxrandr-dev libxrender-dev \
libwebkit2gtk-4.0-dev \
libglu1-mesa-dev mesa-common-dev
```
# Build Projucer app
cd JUCE/extras/Projucer/Builds/LinuxMakefile
# Initial build failed with this issue https://github.com/juce-framework/JUCE/issues/749
Edit Makefile and add `-latomic` to the linker flags, e.g.
```Make
JUCE_LDFLAGS += $(TARGET_ARCH) -L$(JUCE_BINDIR) -L$(JUCE_LIBDIR) $(shell pkg-config --libs freetype2) -fvisibility=hidden -lrt -ldl -lpthread -latomic $(LDFLAGS)
```
# rebuild
make clean
make CXX=g++ -j4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment