Closed dreirund closed 5 years ago
I believe that the plugins building only works if you ./configure --without-libtool
Yes, --without-libtool
is the option that works. Thanks for mentioning & maybe this should be included in configure
's --help
, if not already done in up-to-date version? How could one guess?
I am trying to build gdal 2.3.2 from source, using the official Arch Linux package (http://archlinux.org/packages/community/x86_64/gdal/) as a recipe, but changing
./configure
-options.When the build process reaches
frmts/pdf
orfrmts/openjpeg
, the build fails onmake plugin
, missing a definition of the variableLD_SHARED
.Example: Executing
make plugin
infrmts/openjpeg
, prints the following to the terminal:The corresponding lines of the
GNUmakefile
s in these directories are:For
frmts/pdf/GNUmakefile
:(The full
frmts/pdf/GNUmakefile
I have uploaded there: http://ix.io/1GvT)frmts/openjpeg/GNUmakefile
is:The
GDALmake.opt
, which is included by thefrmts/*/GNUmakefile
s, contains a statementand does not try to set
LD_SHARED
somewhere else. The completeGDALmake.opt
I have uploaded there:http://ix.io/1GvU
It seems that
LD_SHARED
is not set, and somake plugin
tries to execute the command$(OBJ) ../../ogr/ogrsf_frmts/o/ogrmemdatasource.o ../../ogr/ogrsf_frmts/o/ogrmemdriver.o ../../ogr/ogrsf_frmts/o/ogrmemlayer.o $(LDFLAGS) $(CONFIG_LIBS) -o $(PLUGIN_DL) $(PDFIUM_PLUGIN_LIB) $(POPPLER_PLUGIN_LIB) $(PODOFO_PLUGIN_LIB)
, which obviously will fail, since the first element in$(OBJ)
is not an executable.Here more detailed information about how I go about:
I am working on Arch/ Artix Linux.
I use the following steps to build gdal, in this order (taken from the official Arch Linux package's
PKGBUILD
http://archlinux.org/packages/community/x86_64/gdal/):CFLAGS=''
CXXFLAGS=''
LDFLAGS=''
gdal-poppler-0.69.0.patch
: https://github.com/OSGeo/gdal/commit/69e0701253.patchgdal-perl-vendor.patch
: http://ix.io/1GvPgdal-poppler-0.75.patch
: http://ix.io/1GvQpatch -Np2 -i ../gdal-poppler-0.69.0.patch
find frmts/pdf -type f | xargs sed -e 's|GBool|bool|g' -e 's|gFalse|false|g' -e 's|getCString|c_str|g' -i
sed -e 's|#include <goo/gtypes.h>|typedef unsigned char Guchar;|' -i frmts/pdf/pdfsdk_headers.h
patch -p2 -i ../gdal-poppler-0.75.patch
sed -i "s|^mandir=.*|mandir='\${prefix}/share/man'|" configure
patch -Np1 -i ../gdal-perl-vendor.patch
(Up to here, I have changed nothing from the official Arch Linux package.)The output of this configure step (combined
stdout
andstderr
) is attached asconfigure.log
. Additionally,./configure
createad aconfig.log
. It is also attached.make
will eventually fail. Errorneous terminal output fromfrmts/openjpeg
I have given above. configure.log config.log