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 [2019/12/18 18:47] marisa |
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 89: | 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.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.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]]** | ||
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-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 116: | Line 155: | ||
* Copy the script ((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-macos-sierra.sh|install-3rdparty-macos-sierra.sh]]**. | + | * **[[https://gitlab.dpi.inpe.br/terralib/terralib/blob/release-5.5/install/install-3rdparty-macos-sierra.sh|install-3rdparty-macos-sierra.sh]]**. |
Open the shell command line. | Open the shell command line. | ||
Line 122: | Line 161: | ||
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.12.3/5.4/clang_64/bin:/Applications/CMake.app/Contents/bin | + | $ export PATH=$PATH:/usr/local/Cellar/autoconf/2.69/bin:/Users/user/Qt5.12.3/5.12.3/clang_64/bin:/Applications/CMake.app/Contents/bin |
or | or | ||
$ export PATH=$PATH:/Users/user/Qt5.12.3/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 | ||
Line 158: | 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 208: | 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> |