Обсуждение: Missing dependency on Fedora 39 / PostgreSQL 16 / PostGIS 3.4
This is what I get:
> sudo dnf update postgis34_16
enabling fedora-debuginfo repository
enabling fedora-cisco-openh264-debuginfo repository
enabling updates-debuginfo repository
enabling pgdg15-debuginfo repository
enabling pgdg14-debuginfo repository
enabling pgdg13-debuginfo repository
enabling pgdg12-debuginfo repository
Last metadata expiration check: 0:03:17 ago on Tue 26 Mar 2024 05:09:11 PM CET.
Dependencies resolved.
Problem: cannot install the best update candidate for package postgis34_16-3.4.2-1PGDG.f39.x86_64
- nothing provides gdal38-libs >= 3.8.4 needed by postgis34_16-3.4.2-2PGDG.f39.x86_64 from pgdg16
- nothing provides libgdal.so.34()(64bit) needed by postgis34_16-3.4.2-2PGDG.f39.x86_64 from pgdg16
=============================================================================================================================================================================
Package Architecture Version
Repository Size
=============================================================================================================================================================================
Skipping packages with broken dependencies:
postgis34_16 x86_64 3.4.2-2PGDG.f39
pgdg16 4.0 M
Transaction Summary
=============================================================================================================================================================================
Skip 1 Package
Nothing to do.
Complete!>
The repository RPM is pgdg-fedora-repo-42.0-31PGDG.noarch
Yours,
Laurenz Albe
On Tue, 2024-03-26 at 17:19 +0100, I wrote:
> > sudo dnf update postgis34_16
>
> Problem: cannot install the best update candidate for package postgis34_16-3.4.2-1PGDG.f39.x86_64
> - nothing provides gdal38-libs >= 3.8.4 needed by postgis34_16-3.4.2-2PGDG.f39.x86_64 from pgdg16
> - nothing provides libgdal.so.34()(64bit) needed by postgis34_16-3.4.2-2PGDG.f39.x86_64 from pgdg16
>
=============================================================================================================================================================================
> Package Architecture Version
Repository Size
>
=============================================================================================================================================================================
> Skipping packages with broken dependencies:
> postgis34_16 x86_64 3.4.2-2PGDG.f39
pgdg16 4.0 M
gdal38-libs is now available, and the installation works.
Thanks for fixing!
Yours,
Laurenz Albe
Hi, On Thu, 2024-03-28 at 08:59 +0100, Laurenz Albe wrote: > gdal38-libs is now available, and the installation works. > > Thanks for fixing! I did not fix anything :-( No idea what happened, as I also tried with a fresh vm yesterday and it worked as well... Regards, -- Devrim Gündüz Open Source Solution Architect, PostgreSQL Major Contributor Twitter: @DevrimGunduz , @DevrimGunduzTR
On Thu, 2024-03-28 at 09:35 +0000, Devrim Gündüz wrote: > > Thanks for fixing! > > I did not fix anything :-( No idea what happened, as I also tried with a > fresh vm yesterday and it worked as well... Mysterious, but no problem. However, I found a more serious problem: The PostGIS dependencies for the latest package seem to be messed up. Let's check what PROJ and GDAL versions are required by PostGIS: > rpm -q --requires postgis34_16 | grep -e '\(proj\|gdal\)' gdal38-libs >= 3.8.4 libgdal.so.34()(64bit) libproj.so.25()(64bit) proj93 >= 9.3.1 Ok, cool. Now let's look at the requirements for gdal38-libs: > rpm -q --requires gdal38-libs | grep '\(libspatialite\|devel\)' libgeotiff17-devel libspatialite.so.8()(64bit) libspatialite50-devel There is a strange thing: it requires development packages. Huh? But let's follow the other dependency: > rpm -q --whatprovides 'libspatialite.so.8()(64bit)' libspatialite50-5.1.0-2PGDG.f39.x86_64 That's not particularly surprising. But that package requires PROJ too: > rpm -q --requires libspatialite50 | grep proj libproj.so.25()(64bit) proj92 >= 9.2.1 So PostGIS ends up requiring both proj92 and proj93. Since both packages seem to provide the same major library version, I guess that libspatialite50 should be changed to require proj93. Yours, Laurenz Albe