Created
March 31, 2016 19:06
-
-
Save pauloremoli/5f4bbb13b659fe7aaf8e202008c4f66b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# | |
# Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil. | |
# | |
# This file is part of the TerraLib - a Framework for building GIS enabled applications. | |
# | |
# TerraLib is free software: you can redistribute it and/or modify | |
# it under the terms of the GNU Lesser General Public License as published by | |
# the Free Software Foundation, either version 3 of the License, | |
# or (at your option) any later version. | |
# | |
# TerraLib is distributed in the hope that it will be useful, | |
# but WITHOUT ANY WARRANTY; without even the implied warranty of | |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
# GNU Lesser General Public License for more details. | |
# | |
# You should have received a copy of the GNU Lesser General Public License | |
# along with TerraLib. See COPYING. If not, write to | |
# TerraLib Team at <[email protected]>. | |
# | |
# | |
# Description: Install all required software for TerraLib on Linux Ubuntu 14.04. | |
# | |
# Author: Gilberto Ribeiro de Queiroz | |
# Paulo R. M. Oliveira | |
# | |
# | |
# Example: | |
# $ TERRALIB_DEPENDENCIES_DIR="/home/gribeiro/MyLibs" ./install-3rdparty-linux-ubuntu-14.04.sh | |
# | |
echo "*****************************************************************" | |
echo "* TerraLib 3rd-party Libraries Installer for Linux Ubuntu 14.04 *" | |
echo "*****************************************************************" | |
echo "" | |
sleep 1s | |
# | |
# Valid parameter val or abort script | |
# | |
function valid() | |
{ | |
if [ $1 -ne 0 ]; then | |
echo $2 | |
echo "" | |
exit | |
fi | |
} | |
# | |
# Update Ubuntu install list | |
# | |
sudo apt-get update | |
valid $? "Error: could not update apt-get database list" | |
# | |
# gcc | |
# | |
gcpp_test=`dpkg -s g++ | grep Status` | |
if [ "$gcpp_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install g++ | |
valid $? "Error: could not install g++! Please, install g++: sudo apt-get -y install g++" | |
echo "g++ installed!" | |
else | |
echo "g++ already installed!" | |
fi | |
# | |
# zlibdevel | |
# | |
zlibdevel_test=`dpkg -s zlib1g-dev | grep Status` | |
if [ "$zlibdevel_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install zlib1g-dev | |
valid $? "Error: could not install zlib1g-dev! Please, install g++: sudo apt-get -y install zlib1g-dev" | |
echo "zlib1g-dev installed!" | |
else | |
echo "zlib1g-dev already installed!" | |
fi | |
# | |
# libreadline-dev | |
# | |
readline_test=`dpkg -s libreadline-dev | grep Status` | |
if [ "$readline_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install libreadline-dev | |
valid $? "Error: could not install libreadline-dev! Please, install readline: sudo apt-get -y install libreadline-dev" | |
echo "libreadline-dev installed!" | |
else | |
echo "libreadline-dev already installed!" | |
fi | |
# | |
# python support | |
# | |
pysetup_test=`dpkg -s python-setuptools | grep Status` | |
if [ "$gcpp_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install python-setuptools | |
valid $? "Error: could not install python-setuptools! Please, install readline: sudo apt-get -y install python-setuptools" | |
echo "python-setuptools installed!" | |
else | |
echo "python-setuptools already installed!" | |
fi | |
pypip_test=`dpkg -s python-pip | grep Status` | |
if [ "$pypip_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install python-pip | |
valid $? "Error: could not install python-pip! Please, install readline: sudo apt-get -y install python-pip" | |
echo "python-pip installed!" | |
else | |
echo "python-pip already installed!" | |
fi | |
pydev_test=`dpkg -s python-dev | grep Status` | |
if [ "$pydev_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install python-dev | |
valid $? "Error: could not install python-dev! Please, install readline: sudo apt-get -y install python-dev" | |
echo "python-dev installed!" | |
else | |
echo "python-dev already installed!" | |
fi | |
numpy_test=`dpkg -s python-numpy | grep Status` | |
if [ "$numpy_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install python-numpy | |
valid $? "Error: could not install python-numpy! Please, install readline: sudo apt-get -y install python-numpy" | |
echo "python-numpy installed!" | |
else | |
echo "python-numpy already installed!" | |
fi | |
# | |
# autoconf | |
# | |
autoconf_test=`dpkg -s autoconf | grep Status` | |
if [ "$autoconf_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install autoconf | |
valid $? "Error: could not install autoconf! Please, install readline: sudo apt-get -y install autoconf" | |
echo "autoconf installed!" | |
else | |
echo "autoconf already installed!" | |
fi | |
# | |
# GNU gettext | |
# | |
gettext_test=`dpkg -s gettext | grep Status` | |
if [ "$gettext_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install gettext | |
valid $? "Error: could not install gettext! Please, install readline: sudo apt-get -y install gettext" | |
echo "gettext installed!" | |
else | |
echo "gettext already installed!" | |
fi | |
# | |
# flex | |
# | |
flex_test=`dpkg -s flex | grep Status` | |
if [ "$flex_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install flex | |
valid $? "Error: could not install flex! Please, install readline: sudo apt-get -y install flex" | |
echo "flex installed!" | |
else | |
echo "flex already installed!" | |
fi | |
# | |
# bison | |
# | |
bison_test=`dpkg -s bison | grep Status` | |
if [ "$bison_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install bison | |
valid $? "Error: could not install bison! Please, install readline: sudo apt-get -y install bison" | |
echo "bison installed!" | |
else | |
echo "bison already installed!" | |
fi | |
# | |
# qt5-default qttools5-dev qttools5-dev-tools libqt5svg5-dev libqt5designer5 | |
# | |
qt5_dev_test=`dpkg -s qt5-default qttools5-dev qttools5-dev-tools libqt5svg5-dev libqt5designer5 | grep Status` | |
if [ "$qt5_dev_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install qt5-default qttools5-dev qttools5-dev-tools libqt5svg5-dev libqt5designer5 | |
valid $? "Error: could not install qt5-default! Please, install Qt 5 support: sudo apt-get -y install qt5-default qttools5-dev qttools5-dev-tools libqt5svg5-dev libqt5designer5" | |
echo "qt5-dev-tools installed!" | |
else | |
echo "qt5-dev-tools already installed!" | |
fi | |
# | |
# PHP 5 | |
# | |
php5dev_test=`dpkg -s php5-dev | grep Status` | |
if [ "$php5dev_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install php5-dev | |
valid $? "Error: could not install php5-dev! Please, install PHP5 support: sudo apt-get -y install php5-dev" | |
echo "php5-dev installed!" | |
else | |
echo "php5-dev already installed!" | |
fi | |
# | |
# CMake | |
# | |
cmake_test=`dpkg -s cmake | grep Status` | |
if [ "$cmake_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install cmake cmake-qt-gui | |
valid $? "Error: could not install CMake! Please, install CMake: sudo apt-get -y install cmake" | |
echo "CMake installed!" | |
else | |
if [ ! command -v cmake --version >/dev/null 2>&1 ]; then | |
valid 1 "CMake already installed but not found in PATH!" | |
else | |
echo "CMake already installed!" | |
fi | |
fi | |
# | |
# liblog4cxx10-dev | |
# | |
log4cxx_test=`dpkg -s liblog4cxx10-dev | grep Status` | |
if [ "$log4cxx_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install liblog4cxx10-dev | |
valid $? "Error: could not install liblog4cxx10-dev! Please, install liblog4cxx10-dev: sudo apt-get -y install liblog4cxx10-dev" | |
echo "liblog4cxx10-dev installed!" | |
else | |
echo "liblog4cxx10-dev already installed!" | |
fi | |
# | |
# libkml | |
# | |
libkml_test=`dpkg -s libkml-dev | grep Status` | |
if [ "$libkml_test" != "Status: install ok installed" ]; then | |
sudo apt-get -y install libkml-dev | |
valid $? "Error: could not install libkml-dev! Please, install libkml-dev: sudo apt-get -y install libkml-dev" | |
echo "libkml-dev installed!" | |
else | |
echo "libkml-dev already installed!" | |
fi | |
# | |
# Check for terralib-3rdparty-linux-ubuntu-14.04.tar.gz | |
# | |
if [ ! -f ./terralib-3rdparty-linux-ubuntu-14.04.tar.gz ]; then | |
echo "Please, make sure to have terralib-3rdparty-linux-ubuntu-14.04.tar.gz in the current directory!" | |
echo "" | |
exit | |
fi | |
# | |
# Extract packages | |
# | |
echo "extracting packages..." | |
echo "" | |
sleep 1s | |
tar xzvf terralib-3rdparty-linux-ubuntu-14.04.tar.gz | |
valid $? "Error: could not extract 3rd party libraries (terralib-3rdparty-linux-ubuntu-14.04.tar.gz)" | |
echo "packages extracted!" | |
echo "" | |
sleep 1s | |
# | |
# Go to 3rd party libraries dir | |
# | |
cd terralib-3rdparty-linux-ubuntu-14.04 | |
valid $? "Error: could not enter 3rd-party libraries dir (terralib-3rdparty-linux-ubuntu-14.04)" | |
# | |
# Check installation dir | |
# | |
if [ "$TERRALIB_DEPENDENCIES_DIR" == "" ]; then | |
TERRALIB_DEPENDENCIES_DIR="/opt/terralib" | |
fi | |
export PATH="$PATH:$TERRALIB_DEPENDENCIES_DIR/bin" | |
export LD_LIBRARY_PATH="$PATH:$TERRALIB_DEPENDENCIES_DIR/lib" | |
export LDFLAGS=-Wl,-rpath=$TERRALIB_DEPENDENCIES_DIR/lib,--enable-new-dtags | |
echo "installing 3rd-party libraries to '$TERRALIB_DEPENDENCIES_DIR' ..." | |
echo "" | |
sleep 1s | |
# | |
# PCRE | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libpcre.a" ]; then | |
echo "installing PCRE..." | |
echo "" | |
sleep 1s | |
tar xzvf pcre-8.37.tar.gz | |
valid $? "Error: could not uncompress pcre-8.37.tar.gz!" | |
cd pcre-8.37 | |
valid $? "Error: could not enter pcre-8.37 dir!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure PCRE!" | |
make -j 4 | |
valid $? "Error: could not make PCRE!" | |
make install | |
valid $? "Error: Could not install PCRE!" | |
cd .. | |
fi | |
# | |
# SWIG version 3.0.5 | |
# Site: http://www.swig.org | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/bin/swig" ]; then | |
echo "installing SWIG..." | |
echo "" | |
sleep 1s | |
tar xzvf swig-3.0.5.tar.gz | |
valid $? "Error: could not uncompress swig-3.0.5.tar.gz!" | |
cd swig-3.0.5 | |
valid $? "Error: could not enter swig-3.0.5 dir!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR --with-pcre-prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure SWIG!" | |
make -j 4 | |
valid $? "Error: could not make SWIG!" | |
make install | |
valid $? "Error: Could not install SWIG!" | |
cd .. | |
fi | |
# | |
# FreeXL version 1.0.1 | |
# Site: https://www.gaia-gis.it/fossil/freexl/index | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libfreexl.so" ]; then | |
echo "installing FreeXL..." | |
sleep 1s | |
tar xzvf freexl-1.0.1.tar.gz | |
valid $? "Error: could not uncompress freexl-1.0.1.tar.gz!" | |
cd freexl-1.0.1 | |
valid $? "Error: could not enter freexl-1.0.1 dir!" | |
CPPFLAGS=-I$TERRALIB_DEPENDENCIES_DIR/include LDFLAGS=-L$TERRALIB_DEPENDENCIES_DIR/lib ./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure FreeXL!" | |
make -j 4 | |
valid $? "Error: could not make FreeXL!" | |
make install | |
valid $? "Error: Could not install FreeXL!" | |
cd .. | |
fi | |
# | |
# OOSP-UUID | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libuuid.so" ]; then | |
echo "installing OOSP-UUID..." | |
echo "" | |
sleep 1s | |
tar xvf uuid-1.6.2.tar | |
valid $? "Error: could not uncompress uuid-1.6.2.tar!" | |
cd uuid-1.6.2 | |
valid $? "Error: could not enter uuid-1.6.2 dir!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR --with-cxx | |
valid $? "Error: could not configure OOSP-UUID!" | |
make -j 4 | |
valid $? "Error: could not make OOSP-UUID!" | |
make install | |
valid $? "Error: Could not install OOSP-UUID!" | |
cd .. | |
fi | |
# | |
# BZIP2 | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libbz2.a" ]; then | |
echo "installing bzip2..." | |
echo "" | |
sleep 1s | |
tar xzvf bzip2-1.0.6-ubuntu.tar.gz | |
valid $? "Error: could not uncompress bzip2-1.0.6-ubuntu.tar.gz!" | |
cd bzip2-1.0.6 | |
valid $? "Error: could not enter bzip2-1.0.6 dir!" | |
make | |
valid $? "Error: could not make BZIP2!" | |
make install PREFIX=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: Could not install BZIP2!" | |
cd .. | |
fi | |
# | |
# Proj4 version 4.9.1 (with proj-datumgrid version 1.5) | |
# Site: https://trac.osgeo.org/proj/ | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libproj.so" ]; then | |
echo "installing Proj4..." | |
sleep 1s | |
tar xzvf proj-4.9.1.tar.gz | |
valid $? "Error: could not uncompress proj-4.9.1.tar.gz!" | |
cd proj-4.9.1 | |
valid $? "Error: could not enter proj-4.9.1 dir!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure Proj4!" | |
make -j 4 | |
valid $? "Error: could not make Proj4!" | |
make install | |
valid $? "Error: Could not install Proj4!" | |
cd .. | |
fi | |
# | |
# GEOS | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libgeos.so" ]; then | |
echo "installing GEOS..." | |
echo "" | |
sleep 1s | |
tar xjvf geos-3.4.2.tar.bz2 | |
valid $? "Error: could not uncompress geos-3.4.2.tar.bz2!" | |
cd geos-3.4.2 | |
valid $? "Error: could not enter geos-3.4.2 dir!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure GEOS!" | |
make -j 4 | |
valid $? "Error: could not make GEOS!" | |
make install | |
valid $? "Error: Could not install GEOS!" | |
cd .. | |
fi | |
# | |
# libPNG | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libpng.so" ]; then | |
echo "installing libPNG..." | |
echo "" | |
sleep 1s | |
tar xzvf libpng-1.5.17.tar.gz | |
valid $? "Error: could not uncompress libpng-1.5.17.tar.gz!" | |
cd libpng-1.5.17 | |
valid $? "Error: could not enter libpng-1.5.17 dir!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure libPNG!" | |
make -j 4 | |
valid $? "Error: could not make libPNG!" | |
make install | |
valid $? "Error: Could not install libPNG!" | |
cd .. | |
fi | |
# | |
# Independent JPEG Group version v9a | |
# Site: http://www.ijg.org | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libjpeg.so" ]; then | |
echo "installing Independent JPEG Group Library..." | |
sleep 1s | |
tar xzvf jpegsrc.v9a.tar.gz | |
valid $? "Error: could not uncompress jpegsrc.v9a.tar.gz!" | |
cd jpeg-9a | |
valid $? "Error: could not enter jpeg-9a dir!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure JPEG!" | |
make -j 4 | |
valid $? "Error: could not make JPEG!" | |
make install | |
valid $? "Error: Could not install JPEG!" | |
cd .. | |
fi | |
# | |
# TIFF | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libtiff.so" ]; then | |
echo "installing TIFF..." | |
echo "" | |
sleep 1s | |
tar xzvf tiff-4.0.3.tar.gz | |
valid $? "Error: could not uncompress tiff-4.0.3.tar.gz!" | |
cd tiff-4.0.3 | |
valid $? "Error: could not enter tiff-4.0.3!" | |
./configure --enable-cxx --with-jpeg-include-dir=$TERRALIB_DEPENDENCIES_DIR/include --with-jpeg-lib-dir=$TERRALIB_DEPENDENCIES_DIR/lib --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure TIFF!" | |
make -j 4 | |
valid $? "Error: could not make TIFF!" | |
make install | |
valid $? "Error: Could not install TIFF!" | |
cd .. | |
fi | |
# | |
# GeoTIFF | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libgeotiff.so" ]; then | |
echo "installing GeoTIFF..." | |
echo "" | |
sleep 1s | |
tar xzvf libgeotiff-1.4.0.tar.gz | |
valid $? "Error: could not uncompress libgeotiff-1.4.0.tar.gz!" | |
cd libgeotiff-1.4.0 | |
valid $? "Error: could not enter libgeotiff-1.4.0!" | |
./configure --with-jpeg=$TERRALIB_DEPENDENCIES_DIR --with-zlib --with-libtiff=$TERRALIB_DEPENDENCIES_DIR --with-proj=$TERRALIB_DEPENDENCIES_DIR --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure GeoTIFF!" | |
make -j 4 | |
valid $? "Error: could not make GeoTIFF!" | |
make install | |
valid $? "Error: Could not install GeoTIFF!" | |
cd .. | |
fi | |
# | |
# SZIP | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libsz.so" ]; then | |
echo "installing SZIP..." | |
echo "" | |
sleep 1s | |
tar xzvf szip-2.1.tar.gz | |
valid $? "Error: could not uncompress szip-2.1.tar.gz!" | |
cd szip-2.1 | |
valid $? "Error: could not enter szip-2.1!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure SZIP!" | |
make -j 4 | |
valid $? "Error: could not make SZIP!" | |
make install | |
valid $? "Error: Could not install SZIP!" | |
cd .. | |
fi | |
# | |
# CURL version 7.42.1 | |
# Site: http://curl.haxx.se/libcurl/ | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libcurl.so" ]; then | |
echo "installing CURL..." | |
sleep 1s | |
tar xzvf curl-7.42.1.tar.gz | |
valid $? "Error: could not uncompress curl-7.42.1.tar.gz!" | |
cd curl-7.42.1 | |
valid $? "Error: could not enter curl-7.42.1!" | |
./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure CURL!" | |
make -j 4 | |
valid $? "Error: could not make CURL!" | |
make install | |
valid $? "Error: Could not install CURL!" | |
cd .. | |
fi | |
# | |
# ICU | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libicuuc.so" ]; then | |
echo "installing ICU..." | |
echo "" | |
sleep 1s | |
tar xzvf icu4c-52_1-src.tgz | |
valid $? "Error: could not uncompress icu4c-52_1-src.tgz!" | |
cd icu/source | |
valid $? "Error: could not enter icu/source!" | |
chmod +x runConfigureICU configure install-sh | |
valid $? "Error: could not set runConfigureICU to execute mode!" | |
CPPFLAGS="-DU_USING_ICU_NAMESPACE=0 -DU_CHARSET_IS_UTF8=1 -DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1" ./runConfigureICU Linux/gcc --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not runConfigureICU!" | |
make -j 4 | |
valid $? "Error: could not make ICU!" | |
#make check | |
#valid $? "Error: could not check ICU build!" | |
make install | |
valid $? "Error: Could not install ICU!" | |
cd ../.. | |
fi | |
# | |
# Xerces-c | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libxerces-c.so" ]; then | |
echo "installing Xerces..." | |
echo "" | |
sleep 1s | |
tar xzvf xerces-c-3.1.1.tar.gz | |
valid $? "Error: could not uncompress icu4c-52_1-src.tgz!" | |
cd xerces-c-3.1.1 | |
valid $? "Error: could not enter icu/source!" | |
CPPFLAGS=-I$TERRALIB_DEPENDENCIES_DIR/include LDFLAGS=-L$TERRALIB_DEPENDENCIES_DIR/lib ./configure --prefix=$TERRALIB_DEPENDENCIES_DIR --enable-netaccessor-curl --disable-static --enable-msgloader-icu --with-icu=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure Xerces-c!" | |
make -j 4 | |
valid $? "Error: could not make Xerces-c!" | |
make install | |
valid $? "Error: Could not install Xerces-c!" | |
cd .. | |
fi | |
# | |
# libxml2 | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libxml2.so" ]; then | |
echo "installing libxml2..." | |
echo "" | |
sleep 1s | |
tar xzvf libxml2-2.9.1.tar.gz | |
valid $? "Error: could not uncompress libxml2-2.9.1.tar.gz!" | |
cd libxml2-2.9.1 | |
valid $? "Error: could not enter libxml2-2.9.1!" | |
CPPFLAGS=-I$TERRALIB_DEPENDENCIES_DIR/include LDFLAGS=-L$TERRALIB_DEPENDENCIES_DIR/lib ./configure --prefix=$TERRALIB_DEPENDENCIES_DIR --with-icu --without-python | |
valid $? "Error: could not configure libxml2!" | |
make -j 4 | |
valid $? "Error: could not make libxml2" | |
make install | |
valid $? "Error: Could not install libxml2" | |
cd .. | |
fi | |
# | |
# libxslt | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libxslt.so" ]; then | |
echo "installing libxslt..." | |
echo "" | |
sleep 1s | |
tar xzvf libxslt-1.1.28.tar.gz | |
valid $? "Error: could not uncompress libxslt-1.1.28.tar.gz!" | |
cd libxslt-1.1.28 | |
valid $? "Error: could not enter libxslt-1.1.28!" | |
CPPFLAGS=-I$TERRALIB_DEPENDENCIES_DIR/include LDFLAGS=-L$TERRALIB_DEPENDENCIES_DIR/lib ./configure --prefix=$TERRALIB_DEPENDENCIES_DIR --with-libxml-prefix=$TERRALIB_DEPENDENCIES_DIR --without-debug | |
valid $? "Error: could not configure libxslt!" | |
make -j 4 | |
valid $? "Error: could not make libxslt" | |
make install | |
valid $? "Error: Could not install libxslt" | |
cd .. | |
fi | |
# | |
# Boost | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libboost_thread.so" ]; then | |
echo "installing boost..." | |
echo "" | |
sleep 1s | |
tar xzvf boost_1_60_0.tar.gz | |
valid $? "Error: could not uncompress boost_1_60_0.tar.gz!" | |
cd boost_1_60_0 | |
valid $? "Error: could not enter boost_1_60_0!" | |
./bootstrap.sh | |
valid $? "Error: could not configure Boost!" | |
./b2 runtime-link=shared link=shared variant=release threading=multi --prefix=$TERRALIB_DEPENDENCIES_DIR -sICU_PATH=$TERRALIB_DEPENDENCIES_DIR -sICONV_PATH=/usr -sBZIP2_INCLUDE=$TERRALIB_DEPENDENCIES_DIR/include -sBZIP2_LIBPATH=$TERRALIB_DEPENDENCIES_DIR/lib install | |
valid $? "Error: could not make boost" | |
cd .. | |
fi | |
# | |
# PostgreSQL | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/pgsql/lib/libpq.so" ]; then | |
echo "installing PostgreSQL..." | |
echo "" | |
sleep 1s | |
tar xjvf postgresql-9.4.1.tar.bz2 | |
valid $? "Error: could not uncompress postgresql-9.4.1.tar.bz2!" | |
cd postgresql-9.4.1 | |
valid $? "Error: could not enter postgresql-9.4.1!" | |
CPPFLAGS="-I$TERRALIB_DEPENDENCIES_DIR/include -I$TERRALIB_DEPENDENCIES_DIR/include/libxml2" LDFLAGS="-lstdc++ -L$TERRALIB_DEPENDENCIES_DIR/lib" ./configure --with-libxml2 --with-libxslt --with-ossp-uuid --with-openssl --prefix=$TERRALIB_DEPENDENCIES_DIR/pgsql --with-includes=$TERRALIB_DEPENDENCIES_DIR/include --with-libraries=$TERRALIB_DEPENDENCIES_DIR/lib | |
valid $? "Error: could not configure postgresql!" | |
make -j 4 | |
valid $? "Error: could not make postgresql" | |
make install | |
valid $? "Error: Could not install postgresql" | |
cd contrib/uuid-ossp | |
valid $? "Error: could not enter postgresql-9.4.1/contrib/uuid-ossp!" | |
make | |
valid $? "Error: could not make postgresql-9.4.1/contrib/uuid-ossp" | |
make install | |
valid $? "Error: Could not install postgresql-9.4.1/contrib/uuid-ossp" | |
cd ../../.. | |
fi | |
# | |
# HDF4 | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libmfhdf.a" ]; then | |
echo "installing HDF4..." | |
echo "" | |
sleep 1s | |
tar xzvf hdf-4.2.9.tar.gz | |
valid $? "Error: could not uncompress hdf-4.2.9.tar.gz!" | |
cd hdf-4.2.9 | |
valid $? "Error: could not enter hdf-4.2.9!" | |
CFLAGS=-fPIC ./configure --prefix=$TERRALIB_DEPENDENCIES_DIR --with-szlib=$TERRALIB_DEPENDENCIES_DIR --with-zlib --with-jpeg=$TERRALIB_DEPENDENCIES_DIR --enable-netcdf --disable-fortran | |
valid $? "Error: could not configure hdf-4!" | |
make -j 4 | |
valid $? "Error: could not make hdf-4" | |
make install | |
valid $? "Error: Could not install hdf-4" | |
cd .. | |
fi | |
# | |
# SQLite version 3.8.10.1 | |
# Site: https://www.sqlite.org | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libsqlite3.so" ]; then | |
echo "installing SQLite..." | |
sleep 1s | |
tar xzvf sqlite-autoconf-3081001.tar.gz | |
valid $? "Error: could not uncompress sqlite-autoconf-3081001.tar.gz!" | |
cd sqlite-autoconf-3081001 | |
valid $? "Error: could not enter sqlite-autoconf-3081001!" | |
CFLAGS="-Os -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_RTREE -DSQLITE_SOUNDEX -DSQLITE_OMIT_AUTOINIT" ./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure sqlite!" | |
make -j 4 | |
valid $? "Error: could not make sqlite" | |
make install | |
valid $? "Error: Could not install sqlite" | |
cd .. | |
fi | |
# | |
# SpatiaLite version 4.2.0 | |
# Site: https://www.gaia-gis.it/fossil/libspatialite | |
# Obs.: In the future we should turn on libxml2 support. | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libspatialite.so" ]; then | |
echo "installing SpatiaLite..." | |
sleep 1s | |
tar xzvf libspatialite-4.2.0.tar.gz | |
valid $? "Error: could not uncompress libspatialite-4.2.0.tar.gz!" | |
cd libspatialite-4.2.0 | |
valid $? "Error: could not enter libspatialite-4.2.0!" | |
CPPFLAGS="-I$TERRALIB_DEPENDENCIES_DIR -I$TERRALIB_DEPENDENCIES_DIR/include -I$TERRALIB_DEPENDENCIES_DIR/include/libxml2 -I$TERRALIB_DEPENDENCIES_DIR/include/libxml2/libxml" LDFLAGS="-L$TERRALIB_DEPENDENCIES_DIR/lib" ./configure --prefix=$TERRALIB_DEPENDENCIES_DIR --enable-proj --enable-geos --enable-geosadvanced --enable-iconv --enable-freexl --enable-geocallbacks --enable-epsg --enable-gcov --enable-mathsql --enable-libxml2=no --enable-geopackage --with-geosconfig=$TERRALIB_DEPENDENCIES_DIR/bin/geos-config | |
valid $? "Error: could not configure libspatialite!" | |
make -j 4 | |
valid $? "Error: could not make libspatialite" | |
make install | |
valid $? "Error: Could not install libspatialite" | |
cd .. | |
fi | |
# | |
# GDAL/OGR 1.11.2 | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/gdal1/lib/libgdal.so" ]; then | |
echo "installing GDAL/OGR..." | |
echo "" | |
sleep 1s | |
tar xzvf gdal-1.11.2.tar.gz | |
valid $? "Error: could not uncompress gdal-1.11.2.tar.gz!" | |
cd gdal-1.11.2 | |
valid $? "Error: could not enter gdal-1.11.2!" | |
CPPFLAGS="-I$TERRALIB_DEPENDENCIES_DIR/include -I$TERRALIB_DEPENDENCIES_DIR/include/libxml2" LDFLAGS=-L$TERRALIB_DEPENDENCIES_DIR/lib ./configure --with-pg=$TERRALIB_DEPENDENCIES_DIR/pgsql/bin/pg_config --with-png=$TERRALIB_DEPENDENCIES_DIR --with-libtiff=$TERRALIB_DEPENDENCIES_DIR --with-geotiff=$TERRALIB_DEPENDENCIES_DIR --with-jpeg=$TERRALIB_DEPENDENCIES_DIR --with-gif --with-ecw=yes --with-xerces=$TERRALIB_DEPENDENCIES_DIR --with-expat=yes --with-curl=$TERRALIB_DEPENDENCIES_DIR/bin/curl-config --with-sqlite3=$TERRALIB_DEPENDENCIES_DIR --with-geos=$TERRALIB_DEPENDENCIES_DIR/bin/geos-config --with-threads --with-spatialite=$TERRALIB_DEPENDENCIES_DIR --with-freexl=$TERRALIB_DEPENDENCIES_DIR --without-python --prefix=$TERRALIB_DEPENDENCIES_DIR/gdal1 --with-xml2=$TERRALIB_DEPENDENCIES_DIR/bin/xml2-config --with-libkml --with-hdf4=$TERRALIB_DEPENDENCIES_DIR --without-netcdf | |
valid $? "Error: could not configure gdal!" | |
make -j 4 -s | |
valid $? "Error: could not make gdal" | |
make install | |
valid $? "Error: Could not install gdal" | |
cd .. | |
fi | |
# | |
# GDAL/OGR 2.0.1 | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/gdal2/lib/libgdal.so" ]; then | |
echo "installing GDAL/OGR..." | |
echo "" | |
sleep 1s | |
tar xzvf gdal-2.0.1.tar.gz | |
valid $? "Error: could not uncompress gdal-2.0.1.tar.gz!" | |
cd gdal-2.0.1 | |
valid $? "Error: could not enter gdal-2.0.1!" | |
CPPFLAGS="-I$TERRALIB_DEPENDENCIES_DIR/include -I$TERRALIB_DEPENDENCIES_DIR/include/libxml2" LDFLAGS=-L$TERRALIB_DEPENDENCIES_DIR/lib ./configure --with-pg=$TERRALIB_DEPENDENCIES_DIR/pgsql/bin/pg_config --with-png=$TERRALIB_DEPENDENCIES_DIR --with-libtiff=$TERRALIB_DEPENDENCIES_DIR --with-geotiff=$TERRALIB_DEPENDENCIES_DIR --with-jpeg=$TERRALIB_DEPENDENCIES_DIR --with-gif --with-ecw=yes --with-xerces=$TERRALIB_DEPENDENCIES_DIR --with-expat=yes --with-curl=$TERRALIB_DEPENDENCIES_DIR/bin/curl-config --with-sqlite3=$TERRALIB_DEPENDENCIES_DIR --with-geos=$TERRALIB_DEPENDENCIES_DIR/bin/geos-config --with-threads --with-spatialite=$TERRALIB_DEPENDENCIES_DIR --with-freexl=$TERRALIB_DEPENDENCIES_DIR --without-python --prefix=$TERRALIB_DEPENDENCIES_DIR/gdal2 --with-xml2=$TERRALIB_DEPENDENCIES_DIR/bin/xml2-config --with-libkml --with-hdf4=$TERRALIB_DEPENDENCIES_DIR --without-netcdf | |
valid $? "Error: could not configure gdal!" | |
make -j 4 -s | |
valid $? "Error: could not make gdal" | |
make install | |
valid $? "Error: Could not install gdal" | |
cd .. | |
fi | |
# | |
# CppUnit | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libcppunit.so" ]; then | |
echo "installing CppUnit.." | |
echo "" | |
sleep 1s | |
tar xzvf cppunit-1.12.1.tar.gz | |
valid $? "Error: could not uncompress cppunit-1.12.1.tar.gz!" | |
cd cppunit-1.12.1 | |
valid $? "Error: could not enter cppunit-1.12.1!" | |
LDFLAGS="-ldl" ./configure --prefix=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not configure cppunit!" | |
make -j 4 | |
valid $? "Error: could not make cppunit" | |
make install | |
valid $? "Error: Could not install cppunit" | |
cd .. | |
fi | |
# | |
# Qt Property Browser | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libqt_property_browser.so" ]; then | |
echo "installing Qt Property Browser..." | |
echo "" | |
sleep 1s | |
tar xzvf qtpropertybrowser.tar.gz | |
valid $? "Error: could not uncompress qtpropertybrowser.tar.gz!" | |
cd qtpropertybrowser | |
valid $? "Error: could not change dir to qtpropertybrowser!" | |
qmake "TERRALIB_DIR=$TERRALIB_DEPENDENCIES_DIR" | |
valid $? "Error: could not run qmake for qt-property-browser!" | |
make -j 4 | |
valid $? "Error: could not make qt-property-browser!" | |
make install | |
valid $? "Error: Could not install qt-property-browser!" | |
cd .. | |
fi | |
# | |
# QScintilla | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libqscintilla2.so" ]; then | |
echo "installing QScintilla..." | |
echo "" | |
sleep 1s | |
tar xzvf QScintilla-gpl-2.8.tar.gz | |
valid $? "Error: could not uncompress QScintilla-gpl-2.8.tar.gz!" | |
cd QScintilla-gpl-2.8/Qt4Qt5 | |
valid $? "Error: could not change dir to QScintilla-gpl-2.8/Qt4Qt5!" | |
qmake "TERRALIB_DIR=$TERRALIB_DEPENDENCIES_DIR" | |
valid $? "Error: could not prepare QScintilla build with qmake!" | |
make -j 4 | |
valid $? "Error: could not make QScintilla!" | |
make install | |
valid $? "Error: Could not install QScintilla!" | |
cd ../.. | |
fi | |
# | |
# Lua | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/liblua.a" ]; then | |
echo "installing Lua..." | |
echo "" | |
sleep 1s | |
tar xzvf lua-5.2.2.tar.gz | |
valid $? "Error: could not uncompress lua-5.2.2.tar.gz!" | |
cd lua-5.2.2 | |
valid $? "Error: could not change dir to lua-5.2.2!" | |
make linux INSTALL_TOP=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not make Lua!" | |
make linux install INSTALL_TOP=$TERRALIB_DEPENDENCIES_DIR | |
valid $? "Error: could not install Lua!" | |
cd .. | |
fi | |
# | |
# QtLua | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libqtlua.so" ]; then | |
echo "installing QtLua..." | |
echo "" | |
sleep 1s | |
tar xzvf libqtlua-2.0.tar.gz | |
valid $? "Error: could not uncompress libqtlua-2.0.tar.gz!" | |
cd libqtlua-2.0 | |
valid $? "Error: could not change dir to libqtlua-2.0!" | |
LDFLAGS=-L$TERRALIB_DEPENDENCIES_DIR/lib ./configure --enable-qtrelease --disable-examples --enable-shared --with-lua-inc-dir=$TERRALIB_DEPENDENCIES_DIR/include --prefix=$TERRALIB_DEPENDENCIES_DIR --with-lua-lib=lua | |
valid $? "Error: could not configure QtLua!" | |
make -j 4 | |
valid $? "Error: could not make QtLua!" | |
make install | |
valid $? "Error: could not install QtLua!" | |
cp -r src/internal $TERRALIB_DEPENDENCIES_DIR/include/QtLua/ | |
valid $? "Error: could not copy QtLua internal folder!" | |
cd .. | |
fi | |
# | |
# Qwt version | |
# Site: http://qwt.sourceforge.net | |
# | |
if [ ! -f "$TERRALIB_DEPENDENCIES_DIR/lib/libqwt.so" ]; then | |
echo "installing Qwt..." | |
sleep 1s | |
tar xjvf qwt-6.1.2.tar.bz2 | |
valid $? "Error: could not uncompress qwt-6.1.2.tar.bz2!" | |
cd qwt-6.1.2 | |
valid $? "Error: could not change dir to qwt-6.1.2!" | |
qmake qwt.pro "QWT_INSTALL_PREFIX_TARGET=$TERRALIB_DEPENDENCIES_DIR" | |
valid $? "Error: could not configure Qwt!" | |
make -j 4 | |
valid $? "Error: could not make Qwt!" | |
make install | |
valid $? "Error: could not copy Qwt internal folder!" | |
cd .. | |
fi | |
# | |
# Finished! | |
# | |
clear | |
echo "*****************************************************************" | |
echo "* TerraLib 3rd-party Libraries Installer for Linux Ubuntu 14.04 *" | |
echo "*****************************************************************" | |
echo "" | |
echo "finished successfully!" | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment