[osgeo4w-dev] [osgeo4w] #588: gdal_merge.bat Runtime Error. QGIS 3.4.3 Standalone Installers for 32 and 64 bit Windows systems (was: gdal_merge.bat Runtime Error. QGIS 3.4.3 Standallone Installers for 32 and 64 bit Windows systems)
OSGeo4W
trac_osgeo4w at osgeo.org
Tue Jan 8 07:10:17 PST 2019
#588: gdal_merge.bat Runtime Error. QGIS 3.4.3 Standalone Installers for 32 and
64 bit Windows systems
------------------------------------+----------------------------
Reporter: gabrieldeluca | Owner: osgeo4w-dev@…
Type: defect | Status: new
Priority: major | Component: Package
Version: | Resolution:
Keywords: qgis-3 gdal-merge numpy |
------------------------------------+----------------------------
Description changed by jef:
Old description:
> On clean installs of the QGIS 3.4.3 Standallone Installers for 32 and 64
> bit builds for Windows systems, the ''GDAL Merge'' tool produces images
> with only zero values in all pixels when the result is saved to a
> temporary file (if not, the merged file is well generated but the command
> output is the same).
>
> Log:
> {{{
> Processing algorithm…
> Algorithm 'Merge' starting…
> Input parameters:
> { 'DATA_TYPE' : 5, 'INPUT' :
> ['D:/test/merge/S44E170.hgt','D:/test/merge/S44E171.hgt'], 'NODATA_INPUT'
> : None, 'NODATA_OUTPUT' : None, 'OPTIONS' : '', 'OUTPUT' :
> 'C:/Users/Gabriel/AppData/Local/Temp/processing_6e5c1804cb924bf882b2ccc82074d4cc/3b8fd4e987774e5fb55ea11a62d9420c/OUTPUT.tif',
> 'PCT' : False, 'SEPARATE' : False }
>
> GDAL command:
> cmd.exe /C gdal_merge.bat -ot Float32 -of GTiff -o
> C:/Users/Gabriel/AppData/Local/Temp/processing_6e5c1804cb924bf882b2ccc82074d4cc/3b8fd4e987774e5fb55ea11a62d9420c/OUTPUT.tif
> --optfile
> C:/Users/Gabriel/AppData/Local/Temp/processing_6e5c1804cb924bf882b2ccc82074d4cc\mergeInputFiles.txt
> GDAL command output:
> 0RuntimeError: module compiled against API version 0xc but this version
> of numpy is 0xa
>
> Traceback (most recent call last):
>
> File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 611, in <module>
>
> sys.exit(main())
>
> File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 596, in main
>
> fi.copy_into(t_fh, band, band, nodata)
>
> File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 343, in copy_into
>
> nodata_arg)
>
> File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 124, in raster_copy
>
> m_band)
>
> File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 180, in
> raster_copy_with_mask
>
> t_xsize, t_ysize)
>
> File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\site-
> packages\osgeo\gdal.py", line 2635, in ReadAsArray
>
> from osgeo import gdalnumeric
>
> File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\site-
> packages\osgeo\gdalnumeric.py", line 2, in <module>
>
> from osgeo.gdal_array import *
>
> File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\site-
> packages\osgeo\gdal_array.py", line 17, in <module>
>
> _gdal_array = swig_import_helper()
>
> File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\site-
> packages\osgeo\gdal_array.py", line 16, in swig_import_helper
>
> return importlib.import_module('_gdal_array')
>
> File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\importlib\__init__.py",
> line 37, in import_module
>
> __import__(name)
>
> ImportError: No module named _gdal_array
>
> Execution completed in 1.81 seconds
> Results:
> {'OUTPUT': <QgsProcessingOutputLayerDefinition
> {'sink':C:/Users/Gabriel/AppData/Local/Temp/processing_6e5c1804cb924bf882b2ccc82074d4cc/3b8fd4e987774e5fb55ea11a62d9420c/OUTPUT.tif,
> 'createOptions': {'fileEncoding': 'System'}}>}
>
> Loading resulting layers
> Algorithm 'Merge' finished
> }}}
>
> ----
>
> Manually solved from the ''OSGeo4W.bat'' (as Administrator) shell:
>
> {{{
> C:\Windows\System32>python -m pip install -U numpy
> Collecting numpy
> Using cached
> https://files.pythonhosted.org/packages/74/a4/1bae5948ac37ee6769ffdf01fef3e1c731981574d4d416e2876070441688/numpy-1.15.4-cp27
> -none-win_amd64.whl
> Installing collected packages: numpy
> Found existing installation: numpy 1.12.1+mkl
> Uninstalling numpy-1.12.1+mkl:
> Successfully uninstalled numpy-1.12.1+mkl
> Successfully installed numpy-1.15.4
> }}}
>
> After that, ''Merge'' tool works fine and without error logs.
>
> ----
>
> Tested with the builds:
>
> [http://download.osgeo.org/qgis/windows/QGIS-
> OSGeo4W-3.4.3-1-Setup-x86.exe]
>
> [http://download.osgeo.org/qgis/windows/QGIS-OSGeo4W-3.4.3-1-Setup-
> x86_64.exe]
>
> in Windows 7 and Windows 10, with the following data:
>
> [https://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Islands/S44E170.hgt.zip]
>
> [https://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Islands/S44E171.hgt.zip]
>
> ----
>
> Reports found:
>
> [https://gis.stackexchange.com/questions/307195/getting-black-square-
> after-merging-two-rasters-in-qgis/307284#307284]
>
> [https://issues.qgis.org/issues/20895]
New description:
On clean installs of the QGIS 3.4.3 Standallone Installers for 32 and 64
bit builds for Windows systems, the ''GDAL Merge'' tool produces images
with only zero values in all pixels when the result is saved to a
temporary file (if not, the merged file is well generated but the command
output is the same).
Log:
{{{
Processing algorithm…
Algorithm 'Merge' starting…
Input parameters:
{ 'DATA_TYPE' : 5, 'INPUT' :
['D:/test/merge/S44E170.hgt','D:/test/merge/S44E171.hgt'], 'NODATA_INPUT'
: None, 'NODATA_OUTPUT' : None, 'OPTIONS' : '', 'OUTPUT' :
'C:/Users/Gabriel/AppData/Local/Temp/processing_6e5c1804cb924bf882b2ccc82074d4cc/3b8fd4e987774e5fb55ea11a62d9420c/OUTPUT.tif',
'PCT' : False, 'SEPARATE' : False }
GDAL command:
cmd.exe /C gdal_merge.bat -ot Float32 -of GTiff -o
C:/Users/Gabriel/AppData/Local/Temp/processing_6e5c1804cb924bf882b2ccc82074d4cc/3b8fd4e987774e5fb55ea11a62d9420c/OUTPUT.tif
--optfile
C:/Users/Gabriel/AppData/Local/Temp/processing_6e5c1804cb924bf882b2ccc82074d4cc\mergeInputFiles.txt
GDAL command output:
0RuntimeError: module compiled against API version 0xc but this version of
numpy is 0xa
Traceback (most recent call last):
File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 611, in <module>
sys.exit(main())
File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 596, in main
fi.copy_into(t_fh, band, band, nodata)
File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 343, in copy_into
nodata_arg)
File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 124, in raster_copy
m_band)
File "C:\PROGRA~1\QGIS3~1.4\bin\gdal_merge.py", line 180, in
raster_copy_with_mask
t_xsize, t_ysize)
File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\site-
packages\osgeo\gdal.py", line 2635, in ReadAsArray
from osgeo import gdalnumeric
File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\site-
packages\osgeo\gdalnumeric.py", line 2, in <module>
from osgeo.gdal_array import *
File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\site-
packages\osgeo\gdal_array.py", line 17, in <module>
_gdal_array = swig_import_helper()
File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\site-
packages\osgeo\gdal_array.py", line 16, in swig_import_helper
return importlib.import_module('_gdal_array')
File "C:\PROGRA~1\QGIS3~1.4\apps\Python27\lib\importlib\__init__.py", line
37, in import_module
__import__(name)
ImportError: No module named _gdal_array
Execution completed in 1.81 seconds
Results:
{'OUTPUT': <QgsProcessingOutputLayerDefinition
{'sink':C:/Users/Gabriel/AppData/Local/Temp/processing_6e5c1804cb924bf882b2ccc82074d4cc/3b8fd4e987774e5fb55ea11a62d9420c/OUTPUT.tif,
'createOptions': {'fileEncoding': 'System'}}>}
Loading resulting layers
Algorithm 'Merge' finished
}}}
----
Manually solved from the ''OSGeo4W.bat'' (as Administrator) shell:
{{{
C:\Windows\System32>python -m pip install -U numpy
Collecting numpy
Using cached
https://files.pythonhosted.org/packages/74/a4/1bae5948ac37ee6769ffdf01fef3e1c731981574d4d416e2876070441688/numpy-1.15.4-cp27
-none-win_amd64.whl
Installing collected packages: numpy
Found existing installation: numpy 1.12.1+mkl
Uninstalling numpy-1.12.1+mkl:
Successfully uninstalled numpy-1.12.1+mkl
Successfully installed numpy-1.15.4
}}}
After that, ''Merge'' tool works fine and without error logs.
----
Tested with the builds:
[http://download.osgeo.org/qgis/windows/QGIS-
OSGeo4W-3.4.3-1-Setup-x86.exe]
[http://download.osgeo.org/qgis/windows/QGIS-OSGeo4W-3.4.3-1-Setup-
x86_64.exe]
in Windows 7 and Windows 10, with the following data:
[https://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Islands/S44E170.hgt.zip]
[https://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Islands/S44E171.hgt.zip]
----
Reports found:
[https://gis.stackexchange.com/questions/307195/getting-black-square-
after-merging-two-rasters-in-qgis SE Getting black square after merging
two rasters in QGIS ]
[https://issues.qgis.org/issues/20895 QGIS #20835]
--
--
Ticket URL: <https://trac.osgeo.org/osgeo4w/ticket/588#comment:2>
OSGeo4W <http://trac.osgeo.org/osgeo4w>
OSGeo4W is the Windows installer and package environment for the OSGeo stack.
More information about the osgeo4w-dev
mailing list