skip to Main Content

I am trying to run some old matlab code with octave. Unfortunately this code contains a geotiffread function and I think I should change this function with rasterread (package mapping).
However, when I try to install the mapping package I get this warning:

octave:7> pkg install mapping-1.4.0.tar.gz 
configure: WARNING: GDAL library not found.  Reading of raster files will be disabled.
For information about changes from previous versions of the mapping package, run 'news mapping'.

I tried to run octave (5.2.0 version) within:

  • a Debian Buster distribution (snap and flatpak package)
  • a docker container (MacOS 10.15 host, installed from the mtmiller/octave image).
  • online with the octave-online service, running this code:
pkg load mapping;
[bands, info] = rasterread ('mexutm250.tiff');

With this output:

octave:3> source("my_script.m")
error: gdalread: reading of raster file with GDAL was disabled during installation
error: called from
    rasterread at line 56 column 26
    my_script at line 2 column 15

No attempt was successful.


EDIT 2: I know that my octave installations are without GDAL support. I would like to use octave with full mapping package, and GDAL support, without recompile it. There is a way to do it (e.g. update a library path within the docker installation to add the libgdal library)?

If there is no way to add GDAL support without recompile octave, there is a guide to do it with minimal effort?

EDIT 3: I already installed the gdal dependencies:

$ sudo aptitude search gdal |grep ^i
[sudo] password for virtuser: 
i  gdal-bin - Geospatial Data Abstraction Library - programmi di utilità
i A gdal-data - libreria Geospatial Data Abstraction Library - file di dati
i  libgdal-dev - libreria Geospatial Data Abstraction Library - file di sviluppo
i  libgdal20 - libreria Geospatial Data Abstraction Library

Thank you.

2

Answers


  1. Chosen as BEST ANSWER

    I got octave with GDAL integration when I installed the octave package from the debian repository. I needed octave 5.2, so I switched to Ubuntu 20.04.


  2. as suggested in one of the comments, checking

    >> news mapping
    

    (also at https://octave.sourceforge.io/mapping/NEWS.html)

    looking at mapping 1.2.1 where rasterread was introduced, it states:

    ** New features
    Reading GIS raster data: A first go is provided using
    functions rasterread.m and rasterinfo.m. Both invoke binary
    function gdalread() of which an initial version was provided
    by Shashank Khare. rasterread.m and rasterinfo.m can read
    and return info on any raster data type that the underlying
    GDAL library can read. As such, separate functions for e.g.,
    GeoTIFF and ArcGrid etc. are not required.
    To make use of these functions the GDAL library must be
    present on your system => GDAL is a suggested dependency.

    You should be able to install the GDAL library in Debian using your preferred installation method.

    Unsure whether or not you’ll need to uninstall/reinstall the mapping package afterward, but if an unload/reload doesn’t get rid of the message, try that and see if mapping is able to see the library.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search