Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
wiki:documentation:devguide:dependencies [2020/10/16 19:28] marisa [Mac OS X] |
wiki:documentation:devguide:dependencies [2024/12/04 17:08] (current) castejon [Microsoft Windows with Visual C++ 2013] |
||
|---|---|---|---|
| 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 18.04 and 16.04 ==== | + | ==== Linux Ubuntu ==== |
| + | |||
| + | * Download the third-party libraries source code package used by the development team: | ||
| + | * [[https://www.dpi.inpe.br/terralib5-devel/3rdparty/src|Click here]]. | ||
| + | * For recent terralib versions: look for the build script inside the 3rd-party libraries compressed file. Take a look at the script initial structions and set the required enviromental variables. The script must be executed from there. | ||
| + | * For old terralib versions: The build script can be found in TerraLib source tree under //**install**// folder (install-3rdparty-linux-generic.sh). Copy the script file to the same folder where you have downloaded the 3rdparty package. Take a look at the script initial structions and set the required enviromental variables. Execute the script from there. | ||
| + | |||
| + | Example of how to execute the old script: Open the shell command line. Goto the directory where the script was copied. Call the script **install-3rdparty-linux-generic.sh** setting the target to install all the stuffs from these third-party libraries and tools: | ||
| + | <code bash> | ||
| + | $> QT5_BASE_DIR="/home/user/Qt/" TERRALIB_DEPENDENCIES_DIR="/home/user/mylibs" PATH=/home/user/Qt/5.12.3/gcc_64/bin/:$PATH ./install-3rdparty-linux-generic.sh | ||
| + | </code> | ||
| + | |||
| + | **Warning:** Some native system libraries may be required for the build process. The respective development packages must be installed as required. | ||
| + | |||
| + | **Warning:** Don't choose as target location a system folder such as //**/usr**// or //**/usr/local**//. Try some user specific folder. The best suggestion is to replace the folder named //**user**// by your user name. | ||
| + | |||
| + | === Known issues related with Linux Ubuntu 18.04 with Qt 5.12.7 === | ||
| + | |||
| + | You might need to install the right version of some stuffs in order to get the 3rdparty generated. | ||
| + | For example, if you get this error msg,"Cannot find a C++ compiler supporting C++11 on this system": | ||
| + | |||
| + | * Download and compile CMake from https://cmake.org/download/ (the native one is not enough) | ||
| + | |||
| + | Others stuffs needed on Ubuntu because of cmake: | ||
| + | * sudo apt-get install build-essential | ||
| + | * sudo apt-get install build-essential | ||
| + | * sudo apt-get install zlib1g-dev | ||
| + | |||
| + | Others stuffs needed on Ubuntu in order to generate terralib 3rdparty: | ||
| + | * sudo apt-get install curl | ||
| + | * sudo apt-get install libcurl4-openssl-dev | ||
| + | * sudo apt-get install libssl-dev | ||
| + | * sudo apt-get install libreadline-dev | ||
| + | * sudo apt-get install bison flex | ||
| + | * sudo apt install libgl1-mesa-dev | ||
| + | |||
| + | ==== Linux Ubuntu 18.04 and 16.04 (terralib version <= 5.5.1)==== | ||
| 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 80: | Line 116: | ||
| * 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-generic.sh|install-3rdparty-linux-generic.sh]]** (use this script if terralib version is >= 5.5.2) | ||
| * **[[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-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]]** | ||
| Line 90: | Line 125: | ||
| 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.5/install/install-3rdparty-linux-generic.sh|install-3rdparty-linux-generic.sh]]** (use this script if terralib version is >= 5.5.2) | ||
| * **[[https://gitlab.dpi.inpe.br/terralib/terralib/blob/release-5.5/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.5/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]]** | ||
| Line 96: | Line 130: | ||
| 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: | 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-generic.sh (use this script if terralib version is >= 5.5.2) | + | |
| - | $ TERRALIB_DEPENDENCIES_DIR="/home/user/mylibs" ./install-3rdparty-linux-ubuntu-18.04.sh | + | :: For terralib version < 5.5.2 use: |
| + | $> TERRALIB_DEPENDENCIES_DIR="/home/user/mylibs" ./install-3rdparty-linux-ubuntu-18.04.sh | ||
| + | $> TERRALIB_DEPENDENCIES_DIR="/home/user/mylibs" ./install-3rdparty-linux-ubuntu-16.04.sh | ||
| </code> | </code> | ||
| Line 161: | Line 197: | ||
| :: Where to install the third-parties (this folder will be referenced by CMAKE when building terralib5) | :: Where to install the third-parties (this folder will be referenced by CMAKE when building terralib5) | ||
| set TERRALIB_DEPENDENCIES_DIR=C:\terralib5-3rdparty-msvc-2017-win64 | set TERRALIB_DEPENDENCIES_DIR=C:\terralib5-3rdparty-msvc-2017-win64 | ||
| - | :: Where is the TerraLib5 codebase (git clone) | + | :: Where is the TerraLib5 codebase |
| set TERRALIB5_CODEBASE_PATH=C:\MyDevel\terralib5 | set TERRALIB5_CODEBASE_PATH=C:\MyDevel\terralib5 | ||
| </code> | </code> | ||
| Line 211: | Line 247: | ||
| :: Where to install the third-parties (this folder will be referenced by CMAKE when building terralib5) | :: Where to install the third-parties (this folder will be referenced by CMAKE when building terralib5) | ||
| set TERRALIB_DEPENDENCIES_DIR=C:\MyDevel\my-3rds | set TERRALIB_DEPENDENCIES_DIR=C:\MyDevel\my-3rds | ||
| - | :: Where is the TerraLib5 codebase (git clone) | + | :: Where is the TerraLib5 codebase |
| set TERRALIB5_CODEBASE_PATH=C:\MyDevel\terralib5 | set TERRALIB5_CODEBASE_PATH=C:\MyDevel\terralib5 | ||
| </code> | </code> | ||