#! /bin/sh # FROM: https://indilib.org/forum/ekos/9709-ekos-no-longer-appears-after-a-kstars-build-last-night.html#71489 # based on the excellent note by Hy Murveit 2021-05-22 # First, make sure you have all the indi dependencies from: github.com/indilib/indi -- I didn't re-install the dependencies, so best get them from that indi github site # Also, make sure you have all the kstars dependencies from invent.kde.org/education/kstars/-/blob/master/README.md. -- ditto # Set the destination folder #p=~ p=/media/odroid/T5_1T_SSD # by default the script will run all sections if [ $# -eq 0 ]; then part=0 else part=$1 fi # Install the prequisite libraries if [ $part -eq 0 ]; then echo ============================================= echo The release version [not this git development version built by this script] can be retained using the echo normal stable ppa version echo sudo apt-add-repository ppa:mutlaqja/ppa echo ============================================= #sudo apt-add-repository ppa:mutlaqja/ppa #sudo apt-add-repository ppa:mutlaqja/indinightly sudo apt-get install -y git cmake qt5-default libcfitsio-dev libgsl-dev wcslib-dev sudo apt-get install -y libnova-dev libcfitsio-dev libusb-1.0-0-dev zlib1g-dev libgsl-dev sudo apt-get install -y build-essential cmake git libjpeg-dev libcurl4-gnutls-dev libtiff-dev libfftw3-dev sudo apt=get install -y build-essential cmake git libeigen3-dev libcfitsio-dev zlib1g-dev libindi-dev sudo apt-get install -y extra-cmake-modules libkf5plotting-dev libqt5svg5-dev libkf5xmlgui-dev libkf5kio-dev sudo apt-get install -y kinit-dev libkf5newstuff-dev kdoctools-dev libkf5notifications-dev qtdeclarative5-dev sudo apt-get install -y libkf5crash-dev gettext libnova-dev libgsl-dev libraw-dev libkf5notifyconfig-dev sudo apt-get install -y wcslib-dev libqt5websockets5-dev xplanet xplanet-images qt5keychain-dev libsecret-1-dev sudo apt-get install -y breeze-icon-theme libftdi1-dev libdc1394-dev sudo apt-get install -y libnova-dev libcfitsio-dev libusb-1.0-0-dev zlib1g-dev libgsl-dev build-essential sudo apt-get install -y libjpeg-dev libcurl4-gnutls-dev libtiff-dev libfftw3-dev libftdi-dev sudo apt-get install -y libgps-dev libraw-dev libdc1394-22-dev libgphoto2-dev libboost-dev libboost-regex-dev sudo apt-get install -y librtlsdr-dev liblimesuite-dev libftdi1-dev libavcodec-dev libavdevice-dev fi # Clone the Indi and KStars source code if [ $part -eq 1 -o $part -eq 0 ]; then echo ======================================== echo Part 1: Clone the repositories echo ======================================== mkdir -p $p/Projects; cd $p/Projects git clone http://github.com/indilib/indi.git git clone http://github.com/indilib/indi-3rdparty.git git clone http://invent.kde.org/education/kstars.git fi # Update the Indi and KStars source code if [ $part -eq 2 -o $part -eq 0 ]; then echo ======================================== echo Part 2: Update the repositories echo ======================================== cd $p/Projects/indi git pull cd $p/Projects/indi-3rdparty git pull cd $p/Projects/kstars git pull fi # Clone the Indi and KStars source code if [ $part -eq 3 -o $part -eq 0 ]; then echo ======================================== echo Part 3: Stellarsolver echo ======================================== mkdir -p $p/Projects; cd $p/Projects rm -R ./stellarsolver/ git clone https://github.com/rlancaste/stellarsolver.git ./stellarsolver/linux-scripts/installStellarSolverLibrary.sh fi # Compile Indi if [ $part -eq 4 -o $part -eq 0 ]; then echo ======================================== echo Part 4: Compile Indi echo ======================================== mkdir -p $p/Projects/build/indi-core cd $p/Projects/build/indi-core cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo $p/Projects/indi make -j3 sudo make install fi # Compile Indi 3rdparty Libraries if [ $part -eq 5 -o $part -eq 0 ]; then echo ======================================== echo Part 5: Compile Indi 3rdparty Libraries echo ======================================== mkdir -p $p/Projects/build/indi-3rdparty-libs cd $p/Projects/build/indi-3rdparty-libs cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_LIBS=1 $p/Projects/indi-3rdparty make -j3 sudo make install fi # Compile Indi 3rdparty Drivers if [ $part -eq 6 -o $part -eq 0 ]; then echo ====================================== echo Part 6: Compile Indi 3rdparty Drivers echo ====================================== mkdir -p $p/Projects/build/indi-3rdparty cd $p/Projects/build/indi-3rdparty #cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_LIMESDR=Off -DAHP_CORRELATOR=Off $p/Projects/indi-3rdparty cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo $p/Projects/indi-3rdparty make -j3 sudo make install fi # Compile KStars if [ $part -eq 7 -o $part -eq 0 ]; then echo ====================================== echo Part 7: Compile KStars echo ====================================== mkdir -p $p/Projects/kstars-build cd $p/Projects/kstars-build cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCCACHE_SUPPORT=ON ../kstars make -j3 # See note below before executing the below #sudo make install echo This KStars not actually installed, to preserve the release version as well echo it can be run via: $p/Projects/kstars-build/kstars/kstars echo ============================================================== fi # Note: # I don't actually install KStars (last line). I tend to keep the release installed and I run the 'from-git' KStars # from the location the compiler saves to, which in the above would be # /media/odroid/T5_1T_SSD/Projects/kstars-build/kstars/kstars