Opened 7 years ago
Closed 5 years ago
#6762 closed defect (wontfix)
compilation expects libminizip.la, though libminizip.so and header files are installed. Error: grep: /usr/lib/libminizip.la: No such file or directory.
Reported by: | dreieck | Owned by: | warmerdam |
---|---|---|---|
Priority: | normal | Milestone: | closed_because_of_github_migration |
Component: | default | Version: | 2.1.1 |
Severity: | normal | Keywords: | build linking minizip |
Cc: |
Description
I build gdal 2.1.1 on arch linux with the following options:
After a long compile, I get the output:
Of course, the package 'minizip' is installed and it provides header files and library files. But it does not provide '.la'-files. Here is the output of pacman -Qlq minizip
(which lists the installed files):
!#bash /usr/ /usr/include/ /usr/include/minizip/ /usr/include/minizip/crypt.h /usr/include/minizip/ioapi.h /usr/include/minizip/mztools.h /usr/include/minizip/unzip.h /usr/include/minizip/zip.h /usr/lib/ /usr/lib/libminizip.so /usr/lib/libminizip.so.1 /usr/lib/libminizip.so.1.0.0 /usr/lib/pkgconfig/ /usr/lib/pkgconfig/minizip.pc /usr/share/ /usr/share/licenses/ /usr/share/licenses/minizip/ /usr/share/licenses/minizip/LICENSE
For information, here the output of the configure
-run:
checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking C_WFLAGS for maximum warnings... -Wall -Wdeclaration-after-statement checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking CXX_WFLAGS for maximum warnings... -Wall checking whether C compiler accepts -Werror -Wextra... yes checking whether C compiler accepts -Werror -Winit-self... yes checking whether C compiler accepts -Werror -Wunused-parameter... yes checking whether C compiler accepts -Werror -Wmissing-prototypes... yes checking whether C compiler accepts -Werror -Wmissing-declarations... yes checking whether C compiler accepts -Werror -Wformat... yes checking whether C compiler accepts -Werror -Wformat -Werror=format-security -Wno-format-nonliteral... yes checking whether C compiler accepts -Werror -Wshorten-64-to-32... no checking whether C compiler accepts -Werror -Wlogical-op... yes checking whether C compiler accepts -Werror -Wshadow... yes checking whether C compiler accepts -Werror -Werror=vla... yes checking whether C compiler accepts -Werror -Werror=declaration-after-statement... yes checking whether C compiler accepts -Werror -Wnull-dereference... yes checking whether C compiler accepts -Werror -Wduplicated-cond... yes checking whether C compiler accepts -Werror -Wno-sign-compare... yes checking whether C++ compiler accepts -Werror -Wunused-private-field... no checking whether C++ compiler accepts -Werror -Wmissing-prototypes... no checking whether C++ compiler accepts -Werror -Wmissing-declarations... yes checking whether C++ compiler accepts -Werror -Wnon-virtual-dtor... yes checking whether C++ compiler accepts -Werror -Woverloaded-virtual... yes checking whether C++ compiler accepts -Werror -fno-operator-names... yes checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking whether we are using the GNU C++ compiler... (cached) yes checking whether g++ accepts -g... (cached) yes checking how to print strings... printf checking for a sed that does not truncate output... /sbin/sed checking for grep that handles long lines and -e... /sbin/grep checking for egrep... /sbin/grep -E checking for fgrep... /sbin/grep -F checking for ld used by gcc... /sbin/ld checking if the linker (/sbin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /sbin/nm -B checking the name lister (/sbin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop checking for /sbin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... dlltool checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib checking for gawk... gawk checking command to parse /sbin/nm -B output from gcc object... ok checking for sysroot... no checking for mt... no checking if : is a manifest tool... no checking how to run the C preprocessor... gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/sbin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking how to run the C++ preprocessor... g++ -E checking for ld used by g++... /sbin/ld -m elf_x86_64 checking if the linker (/sbin/ld -m elf_x86_64) is GNU ld... yes checking whether the g++ linker (/sbin/ld -m elf_x86_64) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC -DPIC checking if g++ PIC flag -fPIC -DPIC works... yes checking if g++ static flag -static works... yes checking if g++ supports -c -o file.o... yes checking if g++ supports -c -o file.o... (cached) yes checking whether the g++ linker (/sbin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... (cached) GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking for dlopen in -ldl... yes checking for nanosleep in -lrt... yes checking for sin in -lm... yes checking for ANSI C header files... (cached) yes checking assert.h usability... yes checking assert.h presence... yes checking for assert.h... yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for unistd.h... (cached) yes checking dbmalloc.h usability... no checking dbmalloc.h presence... no checking for dbmalloc.h... no checking for dlfcn.h... (cached) yes checking for stdint.h... (cached) yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking values.h usability... yes checking values.h presence... yes checking for values.h... yes checking float.h usability... yes checking float.h presence... yes checking for float.h... yes checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking direct.h usability... no checking direct.h presence... no checking for direct.h... no checking whether byte ordering is bigendian... no checking for 64bit integer type... long long checking for 64bit file io... yes checking for stat64... yes checking for fopen64... yes checking for ftruncate64... yes checking size of int... 4 checking size of unsigned long... 8 checking size of void*... 8 checking for int8... no checking for int16... no checking for int32... no checking native cpu bit order... lsb2msb checking for vprintf... yes checking for _doprnt... no checking for snprintf... yes checking for vsnprintf... yes checking for atoll... yes checking for strtof... yes checking for getcwd... yes checking whether strtof is declared... yes checking for readlink... yes checking for lstat... yes checking for posix_spawnp... yes checking for vfork... yes checking for mmap... yes checking for statvfs... yes checking for gmtime_r... yes checking for localtime_r... yes checking for uselocale... yes checking to enable debug build... no, CFLAGS=" -g0 -march=x86-64 -mtune=generic -O3 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -fomit-frame-pointer -fno-strict-aliasing" checking whether GCC 4.1 atomic builtins are available... yes checking whether SSE is available at compile time... yes checking whether AVX is available at compile time... yes checking to enable LTO (link time optimization) build... no checking whether we should hide internal symbols... no checking for local include/lib path... none checking for pthread_create in -lpthread... yes checking for PTHREAD_MUTEX_RECURSIVE... yes checking for PTHREAD_MUTEX_ADAPTIVE_NP... yes checking for pthread_spinlock_t... yes checking for 5 args mremap()... yes checking for _SC_PHYS_PAGES... yes checking for deflateInit_ in -lz... yes checking for inflateCopy in -lz... yes using pre-installed libz checking for ld used by GCC... /sbin/ld -m elf_x86_64 checking if the linker (/sbin/ld -m elf_x86_64) is GNU ld... yes checking for shared library run path origin... /bin/sh: ./config.rpath: No such file or directory done checking for iconv... yes checking for working iconv... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); using ICONV_CPP_CONST="" checking for lzma_code in -llzma... yes checking for PostgreSQL... yes checking for PQconnectdb in -lpq... yes checking for PQputCopyData in -lpq... yes checking for PQescapeStringConn in -lpq... yes checking for G_is_initialized in -lgrass_gis... yes checking for ffopen in -lcfitsio... yes using pre-installed libcfitsio. using internal csf code. checking for libpng... checking for png_set_IHDR in -lpng... yes checking png.h usability... yes checking png.h presence... yes checking for png.h... yes using pre-installed libpng. checking for libcrunch... dds support disabled. checking for gta_version in -lgta... no libgta not found - GTA support disabled checking for PCIDSK... using internal libpcidsk. checking for libtiff... using internal TIFF code. BigTIFF support enabled. using internal GeoTIFF code. using internal jpeg code. checking for jpeg12... enabled using libgif from /usr/include. checking ecs.h usability... no checking ecs.h presence... no checking for ecs.h... no checking for FMEObjects... no SOSI support disabled. checking for MongoCXX... MongoCXX not found. checking for SDreaddata in -lmfhdfalt... no checking for SDreaddata in -lmfhdf... yes checking for SDget_maxopenfiles in -lmfhdfalt... no checking for SDget_maxopenfiles in -lmfhdf... yes checking for H5Fopen in -lhdf5... yes checking for kea... yes checking for nc-config... /usr/bin/nc-config checking libnetcdf compiler and linker flags with nc-config... got version="netCDF 4.4.1", prefix="/usr", libs="-lnetcdf", includedir="/usr/include" checking for nc_open in -lnetcdf... yes checking for netcdf-4 (and HDF5) support in libnetcdf... yes checking for HDF4 support in libnetcdf... no configure: JasPer (JPEG2000) support disabled. checking for opj_stream_set_user_data_length in -lopenjp2... yes configure: using OpenJPEG v2 library from /usr. checking for libFileGDBAPI.so in in /usr/lib... found. checking for FileGDBAPI.h in /usr/include... found. checking for libNCSEcw.a or libecwj2... found in /usr/lib. checking for NCSECWClient.h in /usr/include... found. checking for ECWJP2BuildNumber.h in /usr/include... not found. checking for Kakadu JPEG2000 support... not requested. configure: MrSID support disabled. configure: MrSID/MG4 Lidar support disabled. checking for MSG... not requested checking for BSB... enabled checking if Oracle support is enabled... no checking for GRIB... enabled checking for GNM ... enabled checking for mysql_config... /sbin/mysql_config checking for MySQL... yes checking for Ingres... no checking for Xerces C++ Parser headers in /usr/include and /usr/include/xercesc... found checking for Xerces C++ Parser libraries... found checking for Xerces C++ Parser... yes checking if Xerces C++ Parser version is >= 2.7.0... yes checking for XML_ParserCreate in -lexpat... yes checking for Expat XML Parser headers in /usr/include... found checking for Expat XML Parser... yes checking if Expat XML Parser version is >= 1.95.0... yes checking for pkg-config... /sbin/pkg-config checking pkg-config is at least version 0.25... yes checking for LIBKML... no checking for Google libkml headers in /usr/include, /usr/include/kml, and /usr/include/kml/third_party/boost_1_34_1... found checking for Google libkml libraries... found checking for Google libkml... yes checking if Google libkml version is >= 1.3.0... yes check for unixODBC checking for SQLConnect in -lodbc... yes checking for SQLInstallDriverEx in -lodbcinst... yes checking for sql.h... yes checking if Oracle support is enabled... no checking for DODS... disabled found libcurl version 7.52.1 checking for curl_global_init in -lcurl... yes checking for xmlParseDoc in -lxml2... yes checking for spatialite... dlopen checking for sqlite3_open in -lsqlite3... yes checking for SQLite3 library >= 3.0.0... yes checking for sqlite3_column_table_name in -lsqlite3... yes checking pcre.h usability... yes checking pcre.h presence... yes checking for pcre.h... yes checking for pcre_compile in -lpcre... yes checking Checking for DWGdirect... disabled configure: IBM Informix DataBlade not supported. configure: checking whether we should include ESRI SDE support... ESRI SDE support not requested. checking for WebPDecodeRGB in -lwebp... yes checking for geos-config... /sbin/geos-config checking for GEOS version >= 3.1.0... yes checking for GEOSversion in -lgeos_c... yes configure: Using C API from GEOS 3.5.0 checking for OpenCL support... no checking for FreeXL support... checking freexl.h usability... yes checking freexl.h presence... yes checking for freexl.h... yes checking for freexl_open in -lfreexl... yes using internal libjson-c code checking whether to enable PAM... yes checking whether to build PDF driver as a plugin... no checking for poppler... yes checking if Catalog::optContent exists... yes checking if BaseStream constructor needs 2 arguments... yes checking if we have Poppler >= 0.20.0... yes checking if we have Poppler >= 0.23.0... yes checking for podofo... yes checking for pdfium... disabled checking how to link PROJ.4 library... link dynamically. checking GDAL version information from gdal_version.h: 2.1.1 checking for perl bindings... enabled checking for php bindings... enabled checking for python bindings... checking for python... python checking for python setuptools... found checking whether we should include Java support... yes checking whether we should include MDB support... no configure: checking whether we should include rasdaman support... rasdaman support not requested. checking whether we should include Armadillo support... yes checking for cryptopp... yes checking if cryptopp has all cipher methods builtin... yes checking for MRF... enabled checking if sprintf can be overloaded for GDAL compilation... yes configure: creating ./config.status config.status: creating GDALmake.opt config.status: WARNING: 'GDALmake.opt.in' seems to ignore the --datarootdir setting config.status: creating port/cpl_config.h config.status: port/cpl_config.h is unchanged config.status: executing libtool commands GDAL is now configured for x86_64-pc-linux-gnu Installation directory: /usr C compiler: gcc -g0 -march=x86-64 -mtune=generic -O3 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -fomit-frame-pointer -fno-strict-aliasing C++ compiler: g++ -g0 -march=x86-64 -mtune=generic -O3 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -fomit-frame-pointer -fpermissive LIBTOOL support: yes LIBZ support: external LIBLZMA support: yes cryptopp support: yes GRASS support: grass70+ CFITSIO support: external PCRaster support: internal LIBPNG support: external DDS support: no GTA support: no LIBTIFF support: internal (BigTIFF=yes) LIBGEOTIFF support: internal LIBJPEG support: internal 12 bit JPEG: yes 12 bit JPEG-in-TIFF: yes LIBGIF support: external OGDI support: no HDF4 support: yes HDF5 support: yes Kea support: yes NetCDF support: yes Kakadu support: no JasPer support: no OpenJPEG support: yes ECW support: yes MrSID support: no MrSID/MG4 Lidar support: no MSG support: no GRIB support: yes EPSILON support: no WebP support: yes cURL support (wms/wcs/...):yes PostgreSQL support: yes MRF support: yes MySQL support: yes Ingres support: no Xerces-C support: yes NAS support: yes Expat support: yes libxml2 support: yes Google libkml support: yes ODBC support: yes PGeo support: yes FGDB support: yes MDB support: no PCIDSK support: internal OCI support: no GEORASTER support: no SDE support: no Rasdaman support: no DODS support: no SQLite support: yes PCRE support: yes SpatiaLite support: dlopen SpatiaLite shared obj name:/usr/lib/libspatialite.so DWGdirect support no INFORMIX DataBlade support:no GEOS support: yes QHull support: internal Poppler support: yes Podofo support: yes PDFium support: no OpenCL support: no Armadillo support: yes FreeXL support: yes SOSI support: no MongoDB support: no SWIG Bindings: python php perl Statically link PROJ.4: no enable GNM building: yes enable pthread support: yes enable POSIX iconv support:yes hide internal symbols: no configure: WARNING: --with-podofo and --with-poppler are both available. This is unusual setup, but will work. Poppler will be used by default... configure: WARNING: --with-libxml2 and --with-fgdb are both available. There might be some incompatibility between system libxml2 and the embedded copy within libFileGDBAPI
Attachments (3)
Change History (11)
follow-up: 3 comment:1 by , 7 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
comment:2 by , 7 years ago
Resolution: | invalid |
---|---|
Status: | closed → reopened |
comment:3 by , 7 years ago
Replying to dreieck:
.. just found out that by default it wants to build static libraries as well. This might be the problem. I am re-compiling with
--disable-static
. (I am not familiar with libraries and linking, so I try.)
.. does not change the problem.
comment:4 by , 7 years ago
GDAL doesn't link directly against minizip. But libkml does, at least in the old way to link against it when there's no pkg-config settings for libkml. On my ubuntu 16.04, "pkg-config --libs libkml" outputs "-lkmlbase -lkmldom -lkmlengine -lkmlxsd -lkmlregionator", so no more minizip. Perhaps you should investigate on this side. This looks a bit distro specific. I don't use archlinux, so unlikely I can fix that, unless you come with a reasonable general purpose patch.
comment:5 by , 7 years ago
It seems to have to do with libtool
: If I explicitly pass --without-libtool
to configure
, it works fine (after having had to change also a few other options to configure
which caused other errors not related to the one I have reported here).
For your information, regarding libkml
which you mentioned:
On my arch linux system, pkg-config --libs libkml
outputs "nothing":
Package libkml was not found in the pkg-config search path. Perhaps you should add the directory containing `libkml.pc' to the PKG_CONFIG_PATH environment variable No package 'libkml' found
However, the configure
-script of gdal seems to find it.
I have installed libkml version 1.2.0, which gets fetched and compiled from https://github.com/google/libkml by an arch linux AUR package. For your information I have attached a file containing the content of my libkml package.
comment:7 by , 7 years ago
Replying to rouault:
You need libkml >= 1.3.0
Thanks. (But why it then works with --without-libtool
?)
by , 7 years ago
Attachment: | makepkg.with-libtool.log.xz added |
---|
Compile log (stdout and stderr) --with-libtool
by , 7 years ago
Attachment: | makepkg.without-libtool.log.xz added |
---|
Compile log (stdout and stderr) --without-libtool
comment:8 by , 5 years ago
Milestone: | → closed_because_of_github_migration |
---|---|
Resolution: | → wontfix |
Status: | reopened → closed |
This ticket has been automatically closed because Trac is no longer used for GDAL bug tracking, since the project has migrated to GitHub. If you believe this ticket is still valid, you may file it to https://github.com/OSGeo/gdal/issues if it is not already reported there.
.. just found out that by default it wants to build static libraries as well. This might be the problem. I am re-compiling with
--disable-static
. (I am not familiar with libraries and linking, so I try.)