2

Windows 用の OSGeo4W の最新のコンパイルをインストールしました。利用可能なさまざまな GDAL ツールを使用したいと考えています。OSGeo4Wコマンド シェルを開くと、 Python と入力して次のように記述します。

> from osgeo import gdal

次のエラーが表示されます。

> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
>   File "C:\OSGeo4W\apps\Python27\lib\site-packages\osgeo\__init__.py", line 21,
> in <module>
>     _gdal = swig_import_helper()
>   File "C:\OSGeo4W\apps\Python27\lib\site-packages\osgeo\__init__.py", line 17,
> in swig_import_helper
>     _mod = imp.load_module('_gdal', fp, pathname, description)
> ImportError: DLL load failed: The operating system cannot run %1.

私のPATHには、次の OSGeo4W エントリが含まれています。

> C:\OSGeo4W\bin
> C:\OSGeo4W\\apps\msys\bin
> C:\OSGeo4W\\apps\Python27\Scripts

Web で読んだことによると、このエラーは互換性のないバージョンに関するものである可能性があります。OSGeo4W パッケージはそのまま動作するようにコンパイルされていると想定しているため、以前にコンピューターにインストールされた他のバージョンまたは干渉する残留物である可能性があります。しかし、干渉しているものとその情報がどこに保存されているかを判断する方法がわかりません。

この問題を解決するにはどうすればよいですか?

4

2 に答える 2

4

この問題は、別のバージョンの Python がインストールされている場合に発生します。

C:\OSGeo4W\bin変数の先頭にディレクトリ パスを追加し、シェルをPATH介して python を実行すると、ライブラリをインポートできることがわかりました。OSGEO4Wgdal

于 2012-06-22T18:00:11.070 に答える
1

共有ライブラリは通常bin、ディストリビューションのサブディレクトリには保存されません。のソースをOSGeo4W調べて、gdal dll ファイル ( gdal.dll??) を探します。おそらくそれはlibサブディレクトリにあります。そのパスもPATH環境変数に追加します。他の GDAL インストールを確認したい場合は、ロードしようとしている dll のシステム全体の検索を開始し、複数あるかどうかを確認してください。


このエラーについてオンラインで見つけた別のオプションは、OSGeo4W に同梱されている特定の Python バージョンを使用する必要があるというものです。通常の Python 2.7 インストールを使用しても機能しません。見る:

于 2012-05-07T14:43:53.830 に答える