2017-11-27 25 views
1

私のpythonアプリケーションでosgeoライブラリをインポートする際に問題があります。Pythonでosgeoライブラリをインポートできません

デフォルトのチャネルの場合:鍛造チャネルについては

python=3.6.0 
pandas=0.19.2 
scikit-learn=0.18.1 
numpy=1.12.1 
requests=2.14.2 
pyyaml=3.12 
jinja2=2.9.6 

:私は次の依存関係によって定義されたconda環境で働いています

gdal=2.2.1 

PIPと一緒にインストール:

jellyfish 
unidecode 
scikit-optimize 
skater==1.0.2 
boto3==1.4.1 
schedule==0.4.3 
geopy==1.11.0 
fuzzywuzzy==0.15.1 
python-Levenshtein==0.12.0 

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

from osgeo import ogr 
File "/opt/conda/lib/python3.6/site-packages/osgeo/__init__.py", line 21, in <module> 
_gdal = swig_import_helper() 
File "/opt/conda/lib/python3.6/site-packages/osgeo/__init__.py", line 17, in swig_import_helper 
_mod = imp.load_module('_gdal', fp, pathname, description) 
File "/opt/conda/lib/python3.6/imp.py", line 242, in load_module 
return load_dynamic(name, filename, file) 
File "/opt/conda/lib/python3.6/imp.py", line 342, in load_dynamic 
return _load(spec) 
ImportError: libpoppler.so.66: cannot open shared object file: No such file or directory 

また、偽造チャネルにポップラー依存性を追加しようとしましたが、機能しません。

これを解決するための考えはありますか?私はDockerを使って作業しているので、私の環境で他のものを変更することは問題ではありません。

私のアプリケーションは今日まで正常に動作していたので、問題は依存関係のチェーンの変更に関係していると思いますが、何が起きているのか分かりません。あなたはconda鍛造パッケージに問題がある場合は

+0

あなたが解決策を見つけた私は、同じ問題を抱えていますか? – PederBG

+0

解決策は、gdalのバージョンをより高いバージョンに変更することでした(リリースされた時点で)。 – Carabes

+0

実際に最新のgdalバージョンを使用していたので、バグだと思ったのですが、数日後に修正されたバージョンの問題がありました。私はそれが今でも固定されていると推測しています。しかし、代わりにSynaptic Package Managerを使用して作業インストールを行ったので、心配はありませんでした。 – PederBG

答えて

0

、例えば、パッケージがビルドされたときにチェックすると便利です: https://anaconda.org/conda-forge/gdal/files

あなたのパッケージがちょうど構築された場合は、依存関係が残っていることが考えられconda-forgeのCI構築プロセスには時間がかかります。

anaconda.orgのファイルリストを見ると、あなたの環境で動作するもう少し最近の、わずかに異なるgdalバージョンが見つかりました。

はまた、あなたが知っておくべきことの問題がある複数のチャネルを使用して(例えばdefaultsconda-forge)ことに注意してください: https://conda-forge.org/docs/conda-forge_gotchas.html#using-multiple-channels

関連する問題