2016-10-19 5 views
5

昨日から私はGDAL(またはアイリス)などのライブラリをインポートするのに苦労していました。GDALをインポートする際の問題:ImportError、ライブラリがロードされていない、イメージが見つかりません

>>> import gdal 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "gdal.py", line 28, in <module> 
    _gdal = swig_import_helper() 
    File "gdal.py", line 24, in swig_import_helper 
    _mod = imp.load_module('_gdal', fp, pathname, description) 
ImportError: dlopen(./_gdal.so, 2): Library not loaded: @rpath/libicui18n.56.dylib 
    Referenced from: /Users/zoran/anaconda/lib/libgdal.20.dylib 
    Reason: image not found 

私は私のファイルで検索し、見つかった:_gdal.so

/Users/zoran/anaconda/pkgs/icu-54.1-を含むlibicui18n

  • 2ファイルを含む

    • 1ファイルを0/lib/libicui18n.54.1.dylib

      /Users/zoran/anaconda/lib/python2.7/site-pac kages/OSGEO/_gdal.so

      /Library/Frameworks/GDAL.framework/Versions/2.1/Python/2.7/site-packages/osgeo/_gdal.so

    今朝はGDALをインポートすることができ問題なく、突然(私は何をしたのか分からない)、それは全く不可能でした。

    は私がしようとした: - アンインストール/ GDAL インストール - /アンインストールをアナコンダをインストールして、インストールを再度GDAL - (python2とのpython3で)異なる新しい環境を作成してインストールのみGDAL私は何を知らない

    このlibicui18n.56.dylibは、隣人libgdal.20.dylibです。

    私は上記のパス名で-Lをコマンドotool入力すると取得:何とかライブラリが保存されている場合

      platform : osx-64 
         conda version : 4.2.9 
        conda is private : False 
        conda-env version : 4.2.9 
    conda-build version : 2.0.2 
        python version : 2.7.12.final.0 
        requests version : 2.11.1 
        root environment : /Users/zoran/anaconda (writable) 
    default environment : /Users/zoran/anaconda 
        envs directories : /Users/zoran/anaconda/envs 
         package cache : /Users/zoran/anaconda/pkgs 
         channel URLs : https://conda.anaconda.org/anaconda/osx-64/ 
             https://conda.anaconda.org/anaconda/noarch/ 
             https://conda.anaconda.org/scitools/osx-64/ 
             https://conda.anaconda.org/scitools/noarch/ 
             https://conda.anaconda.org/conda-forge/osx-64/ 
             https://conda.anaconda.org/conda-forge/noarch/ 
             https://repo.continuum.io/pkgs/free/osx-64/ 
             https://repo.continuum.io/pkgs/free/noarch/ 
             https://repo.continuum.io/pkgs/pro/osx-64/ 
             https://repo.continuum.io/pkgs/pro/noarch/ 
         config file : /Users/zoran/.condarc 
         offline mode : False 
    

    私は疑問に思って:

    libicui18n.54.dylib (compatibility version 54.0.0, current version 54.1.0) 
    @loader_path/./libicuuc.54.dylib (compatibility version 54.0.0, current version 54.1.0) 
    @loader_path/./libicudata.54.dylib (compatibility version 54.0.0, current version 54.1.0) 
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.0.0) 
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0) 
    /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0) 
    
    @rpath/libgdal.1.dylib (compatibility version 20.0.0, current version 20.5.0) 
    /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.0.0) 
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1) 
    
    /Library/Frameworks/GDAL.framework/Versions/2.1/GDAL (compatibility version 22.0.0, current version 22.1.0) 
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 56.0.0) 
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0) 
    

    私はconda情報を入力すると間違った指示?

    私は多くの同様の問題を見たことがありますが、問題を解決するためのトリックはありません。

  • 答えて

    2

    を支援するための

    おかげで私は私の問題hereへの解決策を見つけました。

    は「ocefpaf」の明確な説明をありがとう:

    あなたの問題はconda鍛造と デフォルトの間usuallのミスマッチのように思えます。 (あなたはもちろんの 使用conda鍛造のGDALにしたいならば)次の手順を試すことができます:

    1. を使用すると、チャンネル設定機能を利用するために、最新のcondaを持っていることを確認してください。あなたはconda update condaをあなたのcondaインストールのルートenvで発行することでそれを行うことができます。

    2. .condarcファイルを編集し、デフォルトの上にconda-forgeを置きます。 .condarcは通常ホームディレクトリにあります。下記の私の を参照してください。(。。あなたは 顔の問題の可能性が高いしている複数のチャネルことに注意してください、私は唯一のデフォルトとconda鍛造を持つお勧めします)

    3. あなたが正しいインストール取得するかどうかを確認するには、次のコマンドを発行します。

    conda create --yes -n TEST_GDAL python=3.5 gdal 
    source activate TEST_GDAL 
    python -c "from osgeo import gdal; print(gdal.__version__)" 
    

    あなたは2.1.1を取得する場合、あなたはconda鍛造から最新 バージョンのインストールが成功したことを得ました。上記の例としてenchs を使用するようユーザーに推奨します。しかし、Python 3.5 (conda-forgeには3.4と2.7もあります)を使用する必要はなく、env TEST_GDALの名前を付ける必要はありません。

    ここに私の.condarcファイルがあります。

    > cat .condarc 
    channels: 
    - conda-forge 
    - defaults 
    show_channel_urls: true 
    
    3

    私は同じ問題を抱えています。

    conda install -f jpeg=8 
    
    conda install libgdal 
    

    私の問題

    を解決
    関連する問題