Home >Operation and Maintenance >Linux Operation and Maintenance >How to compile GDAL dynamic library with g++ in Linux environment
The following editor will bring you an articleLinuxHow to compile GDAL dynamic library using environment g++. The editor thinks it’s pretty good, so I’ll share it with you now and give it as a reference. Let’s follow the editor and take a look.
1. Compilation steps
Decompress the downloaded GDAL source program and switch to Unzip the directory.
tar -xzvf gdal-2.1.3.tar.gz cd gdal-2.1.3
GDAL can implement some custom configurations through configure, which can be viewed through the ./configure –h command. --prefix=path indicates the build directory after setting GDAL's make install, which contains the generated header files and dynamic libraries. Enter the following command:
./configure --prefix=/root/Test/gdalbuild
At this time, you can find that the GDALmake.opt file is newly generated in the directory, and the file is included in GNUmakefile for compilation. Enter the command:
make make install
After the compilation is completed, the generated dynamic library file will be in the set directory. The Include directory stores header files, the lib directory stores dynamic library files, and the bin directory stores executable files such as gdalinfo.
2. Note that
1) Note that this is generated in the directory you set instead of the default directory, you need to set the environment variable when calling, or copy it to the system's lib directory, or compile without setting the -prefix parameter.
2) The configure command can also be used to set the debug version or release version. You only need to add the --enable-debug parameter later to control it. It's off by default.
--enable-debug enable debugging (disabled by default)
But I found that there seems to be a problem with this description of GDAL. I compiled two versions with and without this parameter respectively:
With parameter --enable-debug:
Without parameters --enable-debug:
You can see that the release version according to the instructions is larger than the debug version. Generally speaking, the release version has smaller information than the debug version. According to this article "Check whether .so and executable files are debug compiled under Linux" to check whether they are debug compiled, it is found that both have debug information. Release The version has one less debug information than the debug version:
In this way, it is not clear which version is the debug version, and can only be left for future research.
The above is the detailed content of How to compile GDAL dynamic library with g++ in Linux environment. For more information, please follow other related articles on the PHP Chinese website!