13

我已经gdal在 Ubuntu Jaunty 上安装并运行,但我无法运行gdal2tiles,因为我收到错误:

Traceback (most recent call last):
  File "/usr/local/bin/gdal2tiles.py", line 42, in <module>
    import gdal
ImportError: No module named gdal

当我打开 python 并输入时,import gdal我得到了同样的错误。

我已经set LD_LIBRARY_PATH(没有空格!),/usr/local/lib但它似乎没有任何区别。

看起来 Python 找不到gdal. 任何人都可以帮忙吗?

谢谢!

4

1 回答 1

14

这似乎是一个“ Python Path ”问题。在定义的路径中查找 Python 库。尝试

import sys
sys.path

如果 gdal.py 和相关文件所在的目录不在此列表中,则 Python 找不到它。这是“诊断”部分。要解决这种情况,您有多种选择……它们都取决于了解 Python 用于构建此路径的规则。

  • 可以更改 PYTHONPATH 环境变量以包含所需的路径
  • Python 可以从所需库所在的目录启动。
  • sys.path 可以动态更改,使用 sys.path.append("/SomePath/To/MyStuff")

在“官方”Python 文档中,我唯一看到与构建 sys.path 相关的规则的地方是教程,第 6.1.2 节
摘录:

在变量 sys.path 给出的目录列表中搜索模块
它是从包含输入脚本(或
当前目录)、PYTHONPATH 和依赖于安装的默认值。这
允许知道自己在做什么的 Python 程序修改或替换
模块搜索路径。请注意,因为包含脚本的目录是
run 在搜索路径上,重要的是脚本不能同名
作为标准模块,否则 Python 将尝试将脚本作为模块加载
该模块已导入。这通常是一个错误。见部分
标准模块了解更多信息。
于 2009-10-08T16:02:01.730 回答