2

I am trying install an older version of gdal (1.10) on macOS Sierra (10.12.6). The reason for this need is that I have run an assessment of land cover change, in which the initial processing of datasets was done back in 2014. I have since updated gdal, and am up to 2.1. However, going back to re-run my full workflow (to check reproducibility), I find that gdalwarp produces slightly different results between 2.1 (kyngchaos version) and 1.11.5 (most recent home-brew version), and there are still a few very minor discrepancies between datasets I am reprocessing now with gdalwarp 1.11.5 and my oldest analyses, which I think must have been initially done with gdal 1.10.

Now that the long-winded preamble is done, my problem is trying to get gdal 1.10 installed on Sierra, so that I can fully reproduce my workflow. I have tried finding an older version using homebrew, following directions here: Homebrew install specific version of formula?

Case 1 in that post is not relevant (I don't have any older versions of gdal already installed, as this is a brand new machine). Case 2 doesn't work because homebrew/versions was deprecated.

I have also tried Case 3, but neither 3a (the versions command no longer exists) nor 3b worked.

$ git log -S'1.10.1' -- Library/Formula/gdal.rb
$ git log -S'110' -- Library/Formula/gdal.rb

Returns nothing.

Case 4 I will confess I wasn't sure how to go about, so didn't try.

I did find a version of gdal 1.10 in osgeo/osgeo4mac/boneyard, but failed in my efforts to try install it from there.

$ brew tap osgeo/osgeo4mac

$ brew search gdal
gdal ✔                           osgeo/osgeo4mac/gdal1-mysql      osgeo/osgeo4mac/gdal2-mrsid
osgeo/osgeo4mac/gdal-sosi        osgeo/osgeo4mac/gdal1-oracle     osgeo/osgeo4mac/gdal2-mysql
osgeo/osgeo4mac/gdal1-ecwjp2     osgeo/osgeo4mac/gdal2            osgeo/osgeo4mac/gdal2-oracle
osgeo/osgeo4mac/gdal1-filegdb    osgeo/osgeo4mac/gdal2-ecwjp2     osgeo/osgeo4mac/gdal2-python
osgeo/osgeo4mac/gdal1-grass6     osgeo/osgeo4mac/gdal2-filegdb    osgeo/osgeo4mac/gdal2-sosi
osgeo/osgeo4mac/gdal1-mrsid      osgeo/osgeo4mac/gdal2-grass7     osgeo/osgeo4mac/pdfium-gdal2
caskroom/cask/gdal-framework

Doesn't show any earlier versions of gdal available to install through the gdal.

$ brew tap homebrew/boneyard
$ brew info homebrew/boneyard/gdal.rb
$ brew info homebrew/boneyard/gdal-110.rb

No joy there either.

Error: No previously deleted formula found.

Is the size of the answer. The closest I got was trying this:

$ brew install https://raw.githubusercontent.com/OSGeo/homebrew-osgeo4mac/master/boneyard/gdal-110.rb
==> Using Homebrew-provided fortran compiler.
This may be changed by setting the FC environment variable.
==> Downloading http://download.osgeo.org/gdal/1.10.1/gdal-1.10.1.tar.gz
Already downloaded: /Users/lestes/Library/Caches/Homebrew/gdal-110-1.10.1.tar.gz
==> Patching
patching file GDALmake.opt.in
patching file configure
patching file configure.in
patching file ogr/ogrsf_frmts/mysql/GNUmakefile
patching file ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp
patching file port/cpl_spawn.cpp
==> Downloading http://downloads.sourceforge.net/project/numpy/NumPy/1.8.1/numpy-1.8.1.tar.gz
==> Downloading from https://newcontinuum.dl.sourceforge.net/project/numpy/NumPy/1.8.1/numpy-1.8.
######################################################################## 100.0%
Error: SHA256 mismatch
Expected: d4f85af64afe57a76e2b3a79cfcac740fb8ce8a3cd6402662f3c760abfa515e4
Actual: 3d722fc3ac922a34c50183683e828052cd9bb7e9134a95098441297d7ea1c7a9

So that seemed to be heading in the right direction, but I guess the source of numpy 1.8.1. it is looking for has since been changed.

Not yet tried, because I haven't wanted to mess with my gdal 2.1 and QGIS install, are the source build directions here: https://trac.osgeo.org/gdal/wiki/BuildingOnMac

Specifically "The Framework Way" instructions, which only go up through Yosemite.

Thanks for the patience of reading through this, and I will appreciate any pointers/corrections for how to get gdal 1.10 onto my machine.

mazibuko
  • 21
  • 2

1 Answers1

0

Thanks @mazibuko for this research.

The error you got

Error: SHA256 mismatch
Expected: d4f85af64afe57a76e2b3a79cfcac740fb8ce8a3cd6402662f3c760abfa515e4
Actual: 3d722fc3ac922a34c50183683e828052cd9bb7e9134a95098441297d7ea1c7a9

is probably because the sha256 line in the formula you used was wrong. You can just change the formula which is in a .rb file. Search for it in /usr/local/Homebrew

If anyone else reading this just needs gdal 1.x, then it might be even simpler to solve. For my own case, I solved this with

brew tap osgeo/osgeo4mac
brew install sogeo/osgeo4mac/gdal1-filegdb # just picked one with minimal dependencies

and that provided me with Cellar/gdal/1.11.5_4 which I could then link manually:

brew unlink gdal
cd $(brew --prefix) # /usr/local/
cd bin
ln -s ../Cellar/gdal/1.11.5_4/bin/gdal-config gdal-config

and this worked because many things just need gdal-config to get the gdal path so that's enough. To use gdal fully like @mazibuko seems to need, then you have to do all the linking (209 symlinks in latest gdal!) manually, because the brew link for gdal1-filegdb links things differently than brew link gdal did once upon a time.

Simon B.
  • 2,530
  • 24
  • 30