Roger,

curl >= 7.68 was made a requirement for GDAL 3.9 per https://gdal.org/en/stable/development/rfc/rfc98_build_requirements_gdal_3_9.html a bit more than one year ago.

You can try to downgrade the minimum version by patching https://github.com/OSGeo/gdal/blob/51ee2933c08896648613488926bff36939a66be7/cmake/helpers/CheckDependentLibraries.cmake#L29 and see if GDAL still builds with it. It might. This is just untested territory. If that builds, that should be fine. If that doesn't, minor patches might be needed.

Has it considered that R on Mac ships with a custom libcurl build that is up to date ? After all, if you ship an up-to-date GDAL why not shipping an up-to-date libcurl as well?

Even


Le 11/02/2025 à 21:00, Roger Bivand via gdal-dev a écrit :
R-spatial for macOS static builds have run into a serious roadblock at 3.10.1, so maybe an early 3.10.2 could assist us.

Until recently, static macOS builds of GDAL were using 3.5.3. Simon Urbanek (https://github.com/R-macos/recipes) has just converted the recipe for GDAL to cmake, and things were looking positive for 3.10.1, until we realised that:

-- Found CURL: /Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk/usr/lib/libcurl.tbd (found version "7.64.1")
[...]
 checking whether CURLOPT_USERNAME is defined... yes
 checking whether CURLOPT_PASSWORD is defined... yes
 checking whether CURLOPT_KEYPASSWD is defined... yes
 checking whether CURLINFO_RESPONSE_CODE is defined... yes
 checking whether CURLOPT_BUFFERSIZE is defined... yes
 checking whether CURLOPT_TCP_KEEPALIVE is defined... yes
 checking whether libcurl is version 7.66 or later?... no

so CURL is available but the MacOSX11.3.sdk version is insufficient - macOS 11.3 is the mandated build platform for R and R packages to accommodate most Darwin systems from older to newest.

Building GDAL on the cmake step says:

CURL component has been detected, but is disabled with GDAL_USE_CURL=OFF

during the building of GDAL itself, leading to errors in downstream R software:

GDAL/OGR not compiled with libcurl support, remote requests not supported.

in sf and terra if opening resources via URL, and in potentially all the 1000+ packages using sf and terra. So unless this can be resolved, we'll probably have to go back to the last GDAL version not requiring >= 7.66 or whatever the threshold is and when it was changed.

On the macOS side, it isn't practicable to upgrade the system library for distribution to many users.

Is it possible to (optionally) specify a minimum CURL version of 7.64 say when calling cmake in GDAL 3.10? If there is no such possibility now, could it be added to 3.10.2 (RC2)? Where should I look to try to add a prototype change?

I didn't see a mention of the tightening of the CURL version requirement in the NEWS entries, but probably I'm looking in the wrong place.

Best wishes,

Roger

--
http://www.spatialys.com
My software is free, but my time generally not.

_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to