2013-12-10 15:50:11 +01:00
|
|
|
# Install the required tools and dependencies
|
|
|
|
sudo apt-get update
|
2016-03-12 03:49:19 +01:00
|
|
|
sudo apt-get install git cmake build-essential libQt4-dev libusb-1.0-0-dev python-dev libxrender-dev
|
2013-12-10 15:50:11 +01:00
|
|
|
|
2015-11-15 10:32:33 +01:00
|
|
|
# RPI ONLY: when you build on the rapberry pi and include the dispmanx grabber (which is the default)
|
2013-12-10 15:50:11 +01:00
|
|
|
# you also need the firmware including headers installed. This downloads the firmware from the raspberrypi github
|
|
|
|
# and copies the required files to the correct place. The firmware directory can be deleted afterwards if desired.
|
|
|
|
export FIRMWARE_DIR="raspberrypi-firmware"
|
2015-11-15 10:32:33 +01:00
|
|
|
git clone --depth 1 https://github.com/raspberrypi/firmware.git "$FIRMWARE_DIR"
|
|
|
|
sudo cp -R "$FIRMWARE_DIR/hardfp/opt/" /opt
|
2013-12-10 15:50:11 +01:00
|
|
|
|
|
|
|
# create hyperion directory and checkout the code from github
|
2015-11-15 10:32:33 +01:00
|
|
|
# You might want to add "--depth 1" if you only want to recompile the current source or dont want to use git any further
|
2013-12-10 15:50:11 +01:00
|
|
|
export HYPERION_DIR="hyperion"
|
2014-12-20 20:51:17 +01:00
|
|
|
git clone --recursive https://github.com/tvdzwan/hyperion.git "$HYPERION_DIR"
|
2013-12-10 15:50:11 +01:00
|
|
|
|
2016-03-10 22:25:04 +01:00
|
|
|
# if you forget the --recursive in above statement or you are updating an existing clone you need
|
2015-01-16 09:10:23 +01:00
|
|
|
# to clone the protobuf submodule by runnning the follwing two statements:
|
|
|
|
git submodule init
|
|
|
|
git submodule update
|
|
|
|
|
2013-12-10 15:50:11 +01:00
|
|
|
# create and enter the build directory
|
|
|
|
mkdir "$HYPERION_DIR/build"
|
|
|
|
cd "$HYPERION_DIR/build"
|
|
|
|
|
2016-03-13 13:55:56 +01:00
|
|
|
# run cmake to generate make files on the raspberry pi WITHOUT PWM SUPPORT
|
2016-02-27 18:06:04 +01:00
|
|
|
cmake -DCMAKE_BUILD_TYPE=Release -Wno-dev ..
|
2016-03-13 13:55:56 +01:00
|
|
|
# run cmake to generate make files on the raspberry pi WITH PWM SUPPORT
|
|
|
|
cmake -DENABLE_WS2812BPWM=ON -DENABLE_WS281XPWM=ON -DCMAKE_BUILD_TYPE=Release -Wno-dev ..
|
2016-03-22 01:01:54 +01:00
|
|
|
# or if you are not compiling on the raspberry pi (e.g. OrangePi) and need to disable the Dispmanx grabber and support for spi devices
|
2016-02-27 18:06:04 +01:00
|
|
|
cmake -DENABLE_DISPMANX=OFF -DENABLE_SPIDEV=OFF -DENABLE_X11=ON -DCMAKE_BUILD_TYPE=Release -Wno-dev ..
|
2015-01-18 00:04:45 +01:00
|
|
|
# as an alternative for the dispmanx grabber on non-rpi devices (e.g. cubox-i) you could try the framebuffer grabber
|
2016-02-27 18:06:04 +01:00
|
|
|
cmake -DENABLE_DISPMANX=OFF -DENABLE_SPIDEV=OFF -DENABLE_FB=ON -DCMAKE_BUILD_TYPE=Release -Wno-dev ..
|
2016-03-10 22:25:04 +01:00
|
|
|
# for OSX build you need XCode, qt4 libraries and cmake (maybe libusb too). You can use macport or homebrew(recommended) to install them:
|
|
|
|
#for port:
|
2015-01-24 23:42:22 +01:00
|
|
|
sudo port install qt4-mac
|
|
|
|
sudo port install cmake
|
2016-03-10 22:25:04 +01:00
|
|
|
#sudo port install libusb
|
|
|
|
#for brew:
|
|
|
|
sudo brew install qt4-mac
|
|
|
|
sudo brew install cmake
|
|
|
|
#sudo brew install libusb
|
|
|
|
cmake -DENABLE_DISPMANX=OFF -DENABLE_SPIDEV=OFF -DENABLE_V4L2=OFF -DENABLE_OSX=ON ..
|
2013-12-10 15:50:11 +01:00
|
|
|
|
|
|
|
# run make to build Hyperion
|
|
|
|
make
|
2016-02-27 18:06:04 +01:00
|
|
|
# or if you have a system with more then 1 cpu core
|
|
|
|
make -j 4
|
2016-03-13 13:55:56 +01:00
|
|
|
# "4" is the number of cpu cores (e.g. 4 on RPi2 and RPi3), this makes compile faster
|
2016-02-27 18:06:04 +01:00
|
|
|
|
|
|
|
#after compile, to remove any stuff not needed for a release version.
|
|
|
|
strip bin/*
|
2013-12-11 11:11:41 +01:00
|
|
|
|
|
|
|
# The binaries are build in "$HYPERION_DIR/build/bin". You could copy those to /usr/bin
|
|
|
|
sudo cp ./bin/hyperion-remote /usr/bin/
|
|
|
|
sudo cp ./bin/hyperiond /usr/bin/
|
2015-11-15 11:14:44 +01:00
|
|
|
|
|
|
|
# Copy the effect folder (if you did not use the normal installation methode before)
|
|
|
|
sudo mkdir -p /opt/hyperion/effects && sudo cp -R ../effects/ /opt/hyperion/
|