TerraLib and TerraView Wiki Page

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
wiki:documentation:devguide:dependencies [2018/09/17 10:02]
marisa
wiki:documentation:devguide:dependencies [2019/12/18 18:47] (current)
marisa
Line 8: Line 8:
   * **CMake** (Mandatory):​ The TerraLib build system relies on CMake. Please, download and install [[https://​cmake.org/​download|CMake version 3.11]].   * **CMake** (Mandatory):​ The TerraLib build system relies on CMake. Please, download and install [[https://​cmake.org/​download|CMake version 3.11]].
  
-  * **Boost** (Mandatory):​ TerraLib is built on top of Boost libraries. You will need to have them installed in order to build TerraLib. Make sure to have at least version 1.58.0 installed. If you prefer to install from source, download it from: [[http://​www.boost.org]].+  * **Boost** (Mandatory):​ TerraLib is built on top of Boost libraries. You will need to have them installed in order to build TerraLib. Make sure to have at least version 1.65 installed. If you prefer to install from source, download it from: [[http://​www.boost.org]].
  
-  * **GEOS** (Mandatory):​ GEOS is available from [[http://​trac.osgeo.org/​geos]]. Make sure to have at least version 3.4.installed.+  * **GEOS** (Mandatory):​ GEOS is available from [[http://​trac.osgeo.org/​geos]]. Make sure to have at least version 3.7.installed.
  
-  * **Proj4** (Mandatory):​ Proj4 is available from [[http://​trac.osgeo.org/​proj]]. Make sure to have at least version ​4.8.installed.+  * **Proj4** (Mandatory):​ Proj4 is available from [[http://​trac.osgeo.org/​proj]]. Make sure to have at least version ​6.1.installed.
  
-  * **Qt** (Optional): Make sure you have an installed Qt version 5.10.1 (before is was used Qt 5.4.1 and Visual 2013). Linux users may use any package manager to perform an easy installation. Mac OS X can use package managers such as [[http://​brew.sh|Homebrew]] or [[http://​www.macports.org|MacPorts]] in order to have an easy installation. If you prefer to install from source, download it from: [[http://​qt-project.org/​downloads]].+  * **Qt** (Optional): Make sure you have an installed Qt version 5.12.3. Linux users may use any package manager to perform an easy installation. Mac OS X can use package managers such as [[http://​brew.sh|Homebrew]] or [[http://​www.macports.org|MacPorts]] in order to have an easy installation. If you prefer to install from source, download it from: [[http://​qt-project.org/​downloads]].
  
   * **QtPropertyBrowser** (Optional if Qt is not used): QtPropertyBrowser is a free and open source Qt component. We have been using a especial port of QtPropertyBrowser that you can find inside of our [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​ | third-party packages]] sources.\\ You can extract the qtpropertybrowser.tar.gz files using:   * **QtPropertyBrowser** (Optional if Qt is not used): QtPropertyBrowser is a free and open source Qt component. We have been using a especial port of QtPropertyBrowser that you can find inside of our [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​ | third-party packages]] sources.\\ You can extract the qtpropertybrowser.tar.gz files using:
Line 32: Line 32:
   * **Qwt** (Optional if Qt is not used): Qwt is available from [[http://​qwt.sourceforge.net]]. Make sure to have at least version 6.1.0 installed.   * **Qwt** (Optional if Qt is not used): Qwt is available from [[http://​qwt.sourceforge.net]]. Make sure to have at least version 6.1.0 installed.
  
-  * **GDAL** (Optional): GDAL is available from [[http://​www.gdal.org]]. Make sure to have at least version ​2.1.installed.+  * **GDAL** (Optional): GDAL is available from [[http://​www.gdal.org]]. Make sure to have at least version ​3.0.installed.
  
   * **PostgreSQL libpq** (Optional): libpq is available with PostgreSQL source from [[http://​www.postgresql.org]]. Make sure to have at least libpq for PostgreSQL version 9.4.1 installed.   * **PostgreSQL libpq** (Optional): libpq is available with PostgreSQL source from [[http://​www.postgresql.org]]. Make sure to have at least libpq for PostgreSQL version 9.4.1 installed.
Line 60: Line 60:
 To work with '​**develop**'​ branch take the zip from the root dir. To work with '​**release-5.y'​** branch go to the correct subdirectory named 5.y and take the zip. To work with '​**develop**'​ branch take the zip from the root dir. To work with '​**release-5.y'​** branch go to the correct subdirectory named 5.y and take the zip.
  
-In that folder you will find all the third-party libraries for building a 64-bit version of Terralib with **Qt5.10.1** support.+In that folder you will find all the third-party libraries for building a 64-bit version of Terralib with **Qt5.12.3** support.
  
-Microsoft Windows users that have downloaded one of the file [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​bin|3rdparty zip]] must install the same version of Qt used to generate it, i.e., Qt5.10.1 (or Qt 5.4.1).+Microsoft Windows users that have downloaded one of the file [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​bin|3rdparty zip]] must install the same version of Qt used to generate it, i.e., Qt5.13.3.
  
 Also, the same lib Python version used to generate the zip must be installed in your environment. In this example ''​python-3.6.6-amd64.exe''​. Also, the same lib Python version used to generate the zip must be installed in your environment. In this example ''​python-3.6.6-amd64.exe''​.
Line 70: Line 70:
 We have prepared some special shell scripts for building and installing the dependencies on specific platforms. Check the [[http://​www.dpi.inpe.br/​terralib5/​wiki/​doku.php?​id=wiki:​documentation:​devguide:​src_organization |source code structure]] and find the shell script files under //​**install**// ​ folder. We have prepared some special shell scripts for building and installing the dependencies on specific platforms. Check the [[http://​www.dpi.inpe.br/​terralib5/​wiki/​doku.php?​id=wiki:​documentation:​devguide:​src_organization |source code structure]] and find the shell script files under //​**install**// ​ folder.
  
-====  Linux Ubuntu ​14.04 and 16.04 ====+====  Linux Ubuntu ​18.04 and 16.04 ====
  
 The Linux Ubuntu bash script can be found in TerraLib source tree under //​**install**//​ folder. The Linux Ubuntu bash script can be found in TerraLib source tree under //​**install**//​ folder.
Line 76: Line 76:
 Follow these steps if you are working on **'​develop'​** branch: Follow these steps if you are working on **'​develop'​** branch:
   * Download the third-party libraries package used by the development team:    * Download the third-party libraries package used by the development team: 
-    * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-linux-ubuntu-14.04.tar.gz|terralib-3rdparty-linux-ubuntu-14.04.tar.gz]].+    * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-linux-ubuntu-18.04.tar.gz|terralib-3rdparty-linux-ubuntu-18.04.tar.gz]].
     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-linux-ubuntu-16.04.tar.gz|terralib-3rdparty-linux-ubuntu-16.04.tar.gz]].     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-linux-ubuntu-16.04.tar.gz|terralib-3rdparty-linux-ubuntu-16.04.tar.gz]].
  
   * Copy one of the scripts (from your local codebase folder) to the same folder you have downloaded the 3rdparty package:   * Copy one of the scripts (from your local codebase folder) to the same folder you have downloaded the 3rdparty package:
-    * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​develop/​install/​install-3rdparty-linux-ubuntu-14.04.sh|install-3rdparty-linux-ubuntu-14.04.sh]]**+    * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​develop/​install/​install-3rdparty-linux-ubuntu-18.04.sh|install-3rdparty-linux-ubuntu-18.04.sh]]**
     * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​develop/​install/​install-3rdparty-linux-ubuntu-16.04.sh|install-3rdparty-linux-ubuntu-16.04.sh]]**     * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​develop/​install/​install-3rdparty-linux-ubuntu-16.04.sh|install-3rdparty-linux-ubuntu-16.04.sh]]**
  
 Follow these steps if you are working on **'​release-5.y'​** branch: Follow these steps if you are working on **'​release-5.y'​** branch:
   * Download the source code of all third-party libraries from the correct subdirectory named 5.y:   * Download the source code of all third-party libraries from the correct subdirectory named 5.y:
-    * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.y dir]] and download terralib-3rdparty-linux-ubuntu-14.04.tar.gz.+    * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.y dir]] and download terralib-3rdparty-linux-ubuntu-18.04.tar.gz.
     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.y dir]] and download terralib-3rdparty-linux-ubuntu-16.04.tar.gz.     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.y dir]] and download terralib-3rdparty-linux-ubuntu-16.04.tar.gz.
  
 Copy one of the scripts (from your local codebase folder) to the same folder you have downloaded the 3rdparty package: Copy one of the scripts (from your local codebase folder) to the same folder you have downloaded the 3rdparty package:
-    * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​release-5.4/​install/​install-3rdparty-linux-ubuntu-14.04.sh|install-3rdparty-linux-ubuntu-14.04.sh]]**+    * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​release-5.4/​install/​install-3rdparty-linux-ubuntu-18.04.sh|install-3rdparty-linux-ubuntu-18.04.sh]]**
     * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​release-5.4/​install/​install-3rdparty-linux-ubuntu-16.04.sh|install-3rdparty-linux-ubuntu-16.04.sh]]**     * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​release-5.4/​install/​install-3rdparty-linux-ubuntu-16.04.sh|install-3rdparty-linux-ubuntu-16.04.sh]]**
  
-Open the shell command line and call the script **install-3rdparty-linux-ubuntu-14.04.sh** (or the Ubuntu 16.04 one) setting the target to install all the stuffs from these third-party libraries and tools:+Open the shell command line and call the script **install-3rdparty-linux-ubuntu-18.04.sh** (or the Ubuntu 16.04 one) setting the target to install all the stuffs from these third-party libraries and tools:
 <code bash> <code bash>
-$ TERRALIB_DEPENDENCIES_DIR="/​home/​user/​mylibs"​ ./​install-3rdparty-linux-ubuntu-14.04.sh+$ TERRALIB_DEPENDENCIES_DIR="/​home/​user/​mylibs"​ ./​install-3rdparty-linux-ubuntu-18.04.sh
 </​code>​ </​code>​
  
Line 104: Line 104:
  
 Follow these steps if you are working on **'​develop'​** branch: Follow these steps if you are working on **'​develop'​** branch:
-  * Download the third-party libraries package used by the development team: 
-    * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-macosx-el-capitan.tar.gz|terralib-3rdparty-macosx-el-capitan.tar.gz]]. 
     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-macos-sierra.tar.gz|terralib-3rdparty-macos-sierra.tar.gz]].     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-macos-sierra.tar.gz|terralib-3rdparty-macos-sierra.tar.gz]].
  
-  * Copy one of the scripts ​((from your local codebase folder)) to the same folder you have downloaded the 3rdparty package: +  * Copy the script ​((from your local codebase folder)) to the same folder you have downloaded the 3rdparty package: 
-    * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​develop/​install/​install-3rdparty-macosx-el-capitan.sh|install-3rdparty-macosx-el-capitan.sh]]**. ​+
     * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​develop/​install/​install-3rdparty-macos-sierra.sh|install-3rdparty-macos-sierra.sh]]**.     * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​develop/​install/​install-3rdparty-macos-sierra.sh|install-3rdparty-macos-sierra.sh]]**.
  
 Follow these steps if you are working on **'​release-5.y'​** branch: Follow these steps if you are working on **'​release-5.y'​** branch:
   * Download the source code of all third-party libraries from the correct subdirectory named 5.y:   * Download the source code of all third-party libraries from the correct subdirectory named 5.y:
-    * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.y dir]] and download terralib-3rdparty-macosx-el-capitan.tar.gz. 
     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.y dir]] and download terralib-3rdparty-macos-sierra.tar.gz.     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.y dir]] and download terralib-3rdparty-macos-sierra.tar.gz.
    
-  * Copy one of the scripts ​((from your local codebase folder)) to the same folder you have downloaded the 3rdparty package: +  * Copy the script ​((from your local codebase folder)) to the same folder you have downloaded the 3rdparty package: 
-    * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​release-5.2/​install/​install-3rdparty-macosx-el-capitan.sh|install-3rdparty-macosx-el-capitan.sh]]**. ​+
     * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​release-5.2/​install/​install-3rdparty-macos-sierra.sh|install-3rdparty-macos-sierra.sh]]**. ​   ​     * **[[https://​gitlab.dpi.inpe.br/​terralib/​terralib/​blob/​release-5.2/​install/​install-3rdparty-macos-sierra.sh|install-3rdparty-macos-sierra.sh]]**. ​   ​
  
Line 125: Line 122:
 Make sure your Qt and CMake environment can be found in your PATH: Make sure your Qt and CMake environment can be found in your PATH:
 <code bash> <code bash>
-$ export PATH=$PATH:/​Users/​user/​Qt5.10.1/​5.4/​clang_64/​bin:/​Applications/​CMake.app/​Contents/​bin+$ export PATH=$PATH:/​Users/​user/​Qt5.12.3/​5.4/​clang_64/​bin:/​Applications/​CMake.app/​Contents/​bin
 or or
-$ export PATH=$PATH:/​Users/​user/​Qt5.4.1/​5.4/​clang_64/​bin:/​Applications/​CMake.app/​Contents/​bin+$ export PATH=$PATH:/​Users/​user/​Qt5.12.3/​5.4/​clang_64/​bin:/​Applications/​CMake.app/​Contents/​bin
 </​code>​ </​code>​
  
-In the shell command line, call the script //​**install-3rdparty-macosx-el-capitan.sh**// ​(or the Sierra one) setting the target to install all the stuffs from these third-party libraries and tools:+In the shell command line, call the script //​**install-3rdparty-macos-sierra.sh**// setting the target to install all the stuffs from these third-party libraries and tools:
 <code bash> <code bash>
-$ TERRALIB_DEPENDENCIES_DIR="/​Users/​user/​mylibs"​ ./​install-3rdparty-macosx-el-capitan.sh+$ TERRALIB_DEPENDENCIES_DIR="/​Users/​user/​mylibs"​ ./​install-3rdparty-macos-sierra.sh
 </​code>​ </​code>​
  
Line 146: Line 143:
     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-msvc17.zip|terralib-3rdparty-msvc17.zip]]     * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src/​terralib-3rdparty-msvc17.zip|terralib-3rdparty-msvc17.zip]]
  
-  * **release-5.4** branch: Download the source code of all third-party libraries from the correct subdirectory named 5.4+  * **release-5.5** branch: Download the source code of all third-party libraries from the correct subdirectory named 5.5
-    * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.dir]] and download terralib-3rdparty-msvc17.zip+    * [[http://​www.dpi.inpe.br/​terralib5-devel/​3rdparty/​src|choose 5.dir]] and download terralib-3rdparty-msvc17.zip
   ​   ​
   * Unpack it in a folder like  //​**C:/​my_win3rdparty**//​. The tree structure will be:   * Unpack it in a folder like  //​**C:/​my_win3rdparty**//​. The tree structure will be:
Line 170: Line 167:
 set "​CMAKE_FILEPATH=%PROGRAMFILES%\CMake\bin"​ set "​CMAKE_FILEPATH=%PROGRAMFILES%\CMake\bin"​
 :: Where is qmake.exe :: Where is qmake.exe
-set "​QMAKE_FILEPATH=C:​\Qt\Qt5.10.0\5.10.0\msvc2017_64\bin"​+set "​QMAKE_FILEPATH=C:​\Qt\5.12.3\msvc2017_64\bin"​
 :: Where is vcvars (visual studio 64 bits setting environment file (vcvars64.bat)) :: Where is vcvars (visual studio 64 bits setting environment file (vcvars64.bat))
 set "​VCVARS_FILEPATH=%PROGRAMFILES(x86)%\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build"​ set "​VCVARS_FILEPATH=%PROGRAMFILES(x86)%\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build"​
Line 187: Line 184:
  
 Now that you have prepared the working environment,​ please, read the [[:​wiki:​documentation:​devguide:​build|Build Instructions]] section. Now that you have prepared the working environment,​ please, read the [[:​wiki:​documentation:​devguide:​build|Build Instructions]] section.
- 
- 
 ==== Microsoft Windows with Visual C++ 2013 ==== ==== Microsoft Windows with Visual C++ 2013 ====