2016-03-13 02:27:12 +01:00
|
|
|
#!/bin/bash
|
2019-10-17 19:59:25 +02:00
|
|
|
#Use a clean Raspbian Stretch Lite and Ubuntu 18/19 and run this script
|
2016-03-13 02:27:12 +01:00
|
|
|
##############
|
|
|
|
#ON TARGET
|
|
|
|
#--------------
|
2019-09-14 22:54:41 +02:00
|
|
|
#sudo apt-get install qtbase5-dev libqt5serialport5-dev libusb-1.0-0-dev python3-dev libxrender-dev libavahi-core-dev libavahi-compat-libdnssd-dev libjpeg-dev libqt5sql5-sqlite aptitude show qt5-default rsync
|
2016-03-13 02:27:12 +01:00
|
|
|
#############
|
|
|
|
#ON HOST
|
|
|
|
#---------
|
|
|
|
sudo apt-get update
|
|
|
|
sudo apt-get upgrade
|
2019-06-10 15:19:08 +02:00
|
|
|
# !!! TO-DO verify aptitude gcc-multilib
|
2016-03-13 02:27:12 +01:00
|
|
|
|
2019-09-14 22:54:41 +02:00
|
|
|
sudo apt-get -qq -y install git rsync cmake build-essential qtbase5-dev libqt5serialport5-dev libusb-1.0-0-dev python3-dev libxrender-dev libavahi-core-dev libavahi-compat-libdnssd-dev libjpeg-dev libqt5sql5-sqlite
|
2016-03-13 02:27:12 +01:00
|
|
|
#---------
|
|
|
|
|
|
|
|
|
2019-06-10 15:19:08 +02:00
|
|
|
export TARGET_IP=x.x.x.x
|
2015-01-21 12:57:28 +01:00
|
|
|
export TARGET_USER=pi
|
|
|
|
|
2019-06-10 15:19:08 +02:00
|
|
|
export CROSSROOT="$HOME/crosscompile"
|
|
|
|
export RASCROSS_DIR="$CROSSROOT/raspberrypi"
|
2016-03-13 02:27:12 +01:00
|
|
|
export ROOTFS_DIR="$RASCROSS_DIR/rootfs"
|
2019-06-10 15:19:08 +02:00
|
|
|
export TOOLCHAIN_DIR="$RASCROSS_DIR/tools"
|
|
|
|
export QT5_DIR="$CROSSROOT/Qt5"
|
2015-01-21 12:57:28 +01:00
|
|
|
|
2019-06-10 15:19:08 +02:00
|
|
|
export HYPERION_DIR="$HOME/hyperion.ng"
|
2013-10-17 09:43:10 +02:00
|
|
|
|
2019-06-10 15:19:08 +02:00
|
|
|
mkdir -p "$ROOTFS_DIR/lib"
|
|
|
|
mkdir -p "$ROOTFS_DIR/usr"
|
|
|
|
rsync -rl --delete-after --copy-unsafe-links $TARGET_USER@$TARGET_IP:/lib "$ROOTFS_DIR"
|
|
|
|
rsync -rl --delete-after --copy-unsafe-links $TARGET_USER@$TARGET_IP:/usr/include "$ROOTFS_DIR/usr"
|
|
|
|
rsync -rl --delete-after --copy-unsafe-links $TARGET_USER@$TARGET_IP:/usr/lib "$ROOTFS_DIR/usr"
|
2015-01-21 12:57:28 +01:00
|
|
|
|
|
|
|
######## RPi specific #########
|
2013-10-17 09:43:10 +02:00
|
|
|
|
2016-03-13 02:27:12 +01:00
|
|
|
mkdir -p "$RASCROSS_DIR/firmware"
|
2016-08-20 16:37:45 +02:00
|
|
|
git clone --depth 1 https://github.com/raspberrypi/firmware.git "$RASCROSS_DIR/firmware"
|
2015-01-21 12:57:28 +01:00
|
|
|
ln -s "$RASCROSS_DIR/firmware/hardfp/opt" "$ROOTFS_DIR/opt"
|
2013-08-01 09:39:23 +02:00
|
|
|
|
2019-06-10 19:08:30 +02:00
|
|
|
mkdir -p "$TOOLCHAIN_DIR"
|
2019-06-10 15:19:08 +02:00
|
|
|
cd $TOOLCHAIN_DIR
|
2019-06-10 19:08:30 +02:00
|
|
|
wget -c https://releases.linaro.org/components/toolchain/binaries/latest-7/arm-linux-gnueabihf/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf.tar.xz --no-check-certificate
|
|
|
|
tar -xvf gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf.tar.xz
|
2013-10-17 09:43:10 +02:00
|
|
|
|
2015-01-21 12:57:28 +01:00
|
|
|
##### End of RPi specific ######
|
|
|
|
|
2019-06-10 15:19:08 +02:00
|
|
|
######## Qt5 specific #########
|
|
|
|
|
|
|
|
mkdir -p "$QT5_DIR"
|
|
|
|
cd "$QT5_DIR"
|
|
|
|
|
|
|
|
wget -c http://download.qt.io/archive/qt/5.7/5.7.1/qt-opensource-linux-x64-5.7.1.run
|
2019-06-10 19:08:30 +02:00
|
|
|
chmod +x $QT5_DIR/*.run
|
2019-06-10 15:19:08 +02:00
|
|
|
|
2019-06-10 19:08:30 +02:00
|
|
|
#Display absolute installation directory to be used in Qt5 installer
|
2019-06-10 15:19:08 +02:00
|
|
|
echo $HOME/crosscompile/Qt5
|
|
|
|
|
|
|
|
./qt-opensource-linux-x64-5.7.1.run
|
|
|
|
|
|
|
|
#Follow the dialogs and install in absolute directory of $HOME/crosscompile/Qt5 (copy from above)
|
|
|
|
|
|
|
|
##### End of Qt5 specific ######
|
2016-03-13 02:27:12 +01:00
|
|
|
|
2014-12-20 20:51:17 +01:00
|
|
|
# get the Hyperion sources
|
2016-08-20 16:37:45 +02:00
|
|
|
git clone --recursive https://github.com/hyperion-project/hyperion.ng.git "$HYPERION_DIR"
|
2013-10-17 09:43:10 +02:00
|
|
|
|
2019-06-10 15:19:08 +02:00
|
|
|
# get requried submodules
|
|
|
|
cd "$HYPERION_DIR"
|
|
|
|
git fetch --recurse-submodules -j2
|
2013-10-17 09:43:10 +02:00
|
|
|
|
2016-03-13 02:27:12 +01:00
|
|
|
#compile
|
|
|
|
cd "$HYPERION_DIR"
|
2019-06-10 15:19:08 +02:00
|
|
|
chmod +x "$HYPERION_DIR/bin/"*.sh
|
|
|
|
./bin/create_all_releases.sh
|
2016-03-13 02:27:12 +01:00
|
|
|
|
|
|
|
######END
|