在Ubuntu 12.04中为QGIS安装ECW吗?


10

我遵循了各种在线帮助指南,以了解如何在Ubuntu 12.04中使QGIS 1.8的ecw正常工作。我在Ubuntu 10.04上都能正常工作,但是自从迁移到12.04以来,运气并不好。

是否有适用于Ubuntu 12.04的指南?

目前,似乎更容易安装包含ecw支持的Windows版本,但是我想继续使用Ubuntu。


[安装(lib)gdal-ecw] [1]不能解决问题吗?[1]:gis.stackexchange.com/questions/1892/quantum-gis-and-ecw-images
lynxlynxlynx 2012年

做得好Luke,它在我的x64 Ubuntu 13.04 QGIS 1.80上完美运行!;-)
内博伊沙·Tanasković

我得到gdal-ecw-build:找不到命令
jurgena 2014年

给出的答案不适用于较新版本的ubuntu。
AndreJ

Answers:


8

ECW库不是开源软件,不能自由分发。您需要在本地gdal副本中手动添加ecw支持。在ubuntu上执行以下操作:

wget http://de-mirror.org/distro/gentoo/distfiles/libecwj2-3.3-2006-09-06.zip
unzip libecwj2-3.3-2006-09-06.zip
cd libecwj2-3.3
./configure
make
sudo make install
sudo gdal-ecw-build /usr/local/ 
sudo ldconfig

7

Intergraph ECW JPEG2000 SDK v5.0发布,并包含linux支持。ubuntugis不稳定的ppa已更新,在libgdal-ecw-src中包含SDK v5.0支持。

笔记:

  • 截至2013年7月27日,在32位Ubuntu上构建失败
  • ECW / JP2ECW驱动程序使用Python绑定失败,gdal可执行文件正常运行。
  • 该SDK仅许可用于桌面,并且据报告如果尝试在Server应用程序中使用它,将会失败

要在ubuntu 12.04-13.04 64bit中使用ECW JPEG2000 SDK v5.0,请执行以下操作:

  • UbuntuGIS不稳定PPA更新(或安装)libgdal-ecw-src
  • 下载SDK安装程序(ERDAS_ECWJP2_SDK-5.0.bin)
  • 使它可执行(chmod +x ERDAS_ECWJP2_SDK-5.0.bin
  • 运行它(./ERDAS_ECWJP2_SDK-5.0.bin
  • 将SDK目录复制到/ usr / local(sudo cp -r ecwjp2_sdk /usr/local/
  • 将libNCSEcw.so符号链接到/ usr / local / lib(sudo ln -s /usr/local/ecwjp2_sdk/lib/x64/release/libNCSEcw.so /usr/local/lib/libNCSEcw.so
  • 更新ldconfig(sudo ldconfig
  • 运行gdal-ecw-build脚本(sudo gdal-ecw-build /usr/local/ecwjp2_sdk
  • 测试它的工作原理:

    gdalinfo --formats | grep -i ecw

    ECW (rw+): ERDAS Compressed Wavelets (SDK 5.0)

    JP2ECW (rw+v): ERDAS JPEG2000 (SDK 5.0)


要使用python绑定,这是一种对我有用的解决方法:1.在ecwjp2_sdk目录中安装SDK 5.0库;2.使用以下语法从源代码编译gdal库:。/配置-with-python =是-with-ecw = / path / to / SDK / ecwjp2_sdk
MickyInTheSky 2014年

是的,为了完整性。对我来说,如果您要更新答案,没有问题。
MickyInTheSky14年

目前,SDK已切换到5.1。我在此处描述了Ubuntu 14.04的更新工作流程:gis.stackexchange.com/questions/94870/…。对于12.04,您不必手动下载构建脚本,apt-get install可以使用。
AndreJ 2014年

3

此处的方法链接是唯一在Ubuntu 12.04 32bit和最新版本的QGIS上对我有用的方法。

在这里,我复制了步骤,并进行了相应的调整:

  1. 转到http://download.intergraph.com/,然后从“产品系列:”下的下拉列表中选择“ ECW产品”。
  2. 单击“ ERDAS ECW / JP2 SDK v5.3(Linux)”(版本5.3从2016-06-14开始可用),然后单击“立即下载”
  3. 您必须在网站上注册。
  4. 解压缩下载的文件,例如:

unzip erdas-ecw-sdk-5.3.0-linux.zip 
  1. 使解压缩的二进制可执行文件:

chmod +x ERDAS_ECWJP2_SDK-5.3.0.bin 
  1. 执行程序;选择选项“台式机只读”

./ERDAS_ECWJP2_SDK-5.3.0.bin
  1. 现在将ERDAS_ECWJP2_SDK-5.3.0文件夹复制到/usr/local

sudo cp -r ERDAS-ECW_JPEG_2000_SDK-5.2.1 /usr/local/
  1. 找到libNCSEcw.so并创建一个符号(“软”)链接。使用文件夹x86x64根据您的系统:

sudo ln -s /usr/local/ERDAS-ECW_JPEG_2000_SDK-5.2.1/Desktop_Read-Only/lib/x86/release/libNCSEcw.so /usr/local/lib/libNCSEcw.so
  1. 现在运行以下命令(更新动态链接,安装ECW GDAL扩展并运行它):

sudo ldconfig
sudo apt-get install libgdal-ecw-src
sudo gdal-ecw-build /usr/local/ERDAS-ECW_JPEG_2000_SDK-5.2.1/Desktop_Read-Only
  1. 确认一切正常:

gdalinfo --formats | grep -i ecw

你应该得到类似


    ECW (rw+): ERDAS Compressed Wavelets (SDK 5.3)
    JP2ECW (rw+v): ERDAS JPEG2000 (SDK 5.3)
  1. 现在,您可以运行QGIS以在栅格图层上导入ECW文件。

很快,我应该能够报告它如何在Ubuntu 16.04 64bit上工作,但是如果已经做过,请发表评论或编辑此答案。


您使用了哪个GDAL版本,是否需要ubuntugis软件包?
AndreJ '16

我早就安装了ubuntugis和qgis存储库,因此我不确定是否需要ubuntugis的哪些软件包。至于GDAL版本,事实证明我已经gdal-bin 1.10.0-1~precise2安装,安装了2012-03-15,libgdal1-1.7.0 1.7.3-6ubuntu3安装了2012-05-09等libgdal-ecw-src,显然是在最近,它的版本是1.10.0。
carnendil '16

因此,由于默认情况下会获得GDAL 2.1.0,因此您将无法使用新的干净系统,但是libgdal-ecw-src不适用于比GDAL 1.10更高的版本。我在gis.stackexchange.com/questions/94870/…上针对trusty和GDAL 1.11进行了变通,但这已经缺乏python支持,
AndreJ '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.