RE: PostGIS, CentOS 6 / RHEL 6, and Pg 12

From: Michael Harris <michael(dot)harris(at)ericsson(dot)com>
To: Craig Ringer <craig(at)2ndquadrant(dot)com>, pgsql-pkg-yum <pgsql-pkg-yum(at)postgresql(dot)org>
Subject: RE: PostGIS, CentOS 6 / RHEL 6, and Pg 12
Date: 2019-12-18 00:29:04
Message-ID: AM0PR07MB6179E69A55E3948815DFEF7AF3530@AM0PR07MB6179.eurprd07.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-pkg-yum

Hi Craig

Maybe another route would be to use the devtoolset-7 compilers?
https://www.softwarecollections.org/en/scls/rhscl/devtoolset-7/

Assuming the policy is to allow compilers other than the default system compiler - not sure about that.

Cheers
Mike

From: Craig Ringer <craig(at)2ndquadrant(dot)com>
Sent: Tuesday, December 17, 2019 1:51 PM
To: pgsql-pkg-yum <pgsql-pkg-yum(at)postgresql(dot)org>
Subject: PostGIS, CentOS 6 / RHEL 6, and Pg 12

Hi folks

I've been contacted by someone to ask about why PostGIS 2.5 or 3.0 rpms aren't produced for RHEL 6 or CentOS 6. They were produced for PostgreSQL 11.

I've done some digging in the repo which suggests that PostGIS 2.5 can't be built for EL-6 due to missing proj49, dependencies in the spec defined against newer geos and proj that cannot be built on EL-6, and dependency on an unavailable gdal version.

I don't see any announcement or detail on this.

Was de-supporting PostGIS on EL-6 an intentional step as part of the Pg12 migration?

I've made changes to build Pg12 / EL-6 / PostGIS 2.5 in my local tree. They're not clean to push as a patch upstream as-is, but I can clean them up if they will be accepted. The only change likely to be controversial is that I need to bring back proj49 (for EL-6 only).

Thoughts?

I've attached the patch, which also contains some unrelated changes to make local builds under Docker easier and provides a wrapper for building. The patch is NOT TO BE MERGED, it's only to help others with this issue.

Details on Pg12/EL-6/PostGIS 2.5 compat:

* PostGIS 3.0 requires C++11 and cannot be built on EL-6 due to
compiler version

* The PostGIS 2.5 spec depends on libgeos 3.8 and proj62

* PostGIS 2.5 can be built successfully against the older proj49 and libgeos 3.6
but the spec doesn't permit that as currently written and we don't build those
dependencies for EL-6 anymore

* libgeos 3.7 and 3.8 require a C++ compiler and cannot be built on EL-6

* proj62 and proj52 require a C++11 compiler and cannot be built on EL-6

* proj49 can be built on EL-6 but has been removed from the repository
by commit caf2197d4 "Remove proj49 and proj52 from repos. No longer needed"
on September 24

* libgeos 3.6 builds on EL-6 but is not built for pg12 - there's no
rpm/redhat/12/geos36/EL-6 symlink, though a
rpm/redhat/11/geos36/EL-6 exists

* postgis 2.5 appears to be enabled for pg11 since
rpm/redhat/11/postgis25/EL-6 exists - but it cannot be built given the
dependencies defined.

I repeat, patch is NOT FOR MERGE.

--
Craig Ringer http://www.2ndQuadrant.com/<https://protect2.fireeye.com/v1/url?k=5b34fa18-07be30c6-5b34ba83-86823e270a62-1cfb906d26210086&q=1&e=10968234-be46-4486-aa8d-28889d07e09f&u=http%3A%2F%2Fwww.2ndquadrant.com%2F>
2ndQuadrant - PostgreSQL Solutions for the Enterprise

In response to

Browse pgsql-pkg-yum by date

  From Date Subject
Next Message Craig Ringer 2019-12-18 06:39:57 Build process documentation? Also patches to make it easier to build individual packages
Previous Message Craig Ringer 2019-12-17 05:51:57 Bad DIST settings