2017-10-15 86 views
1

私はラズベリーパイ3でlibrosaを実行しようとしています。 インターネットで検索したところ、最終的にはインストールできましたが、インポートしようとするとエラーが発生します。まず、依存関係llvmliteのインストールに問題がありました。私はついに次のコードでそれをインストールしました:conda install -c numba llvmlite 私はminicondaでpython 3.4ビルドを使用します。 llvmliteは(condaでは可能ではない)私はピップでlibrosaをインストールすることができましたインストールした後ラズベリーパイのlibrosa&numbaを実行中3

[email protected]:~ $ pip install librosa 
Collecting librosa 
Using cached https://www.piwheels.hostedpi.com/simple/librosa/librosa- 
0.5.1-py3-none-any.whl 
Requirement already satisfied: resampy>=0.1.2 in 
./miniconda3/lib/python3.4/site-packages (from librosa) 
Requirement already satisfied: scipy>=0.13.0 in 
... 
Installing collected packages: librosa 
Successfully installed librosa-0.5.1 

どうやらインストールされているlibrosa。 librosaをインポートしようと

[email protected]:~ $ pip list 
DEPRECATION: The default format will switch to columns in the future. 
You can use --format=(legacy|columns) (or define a format= 
(legacy|columns) in your pip.conf under the [list] section) to disable 
this warning. 
anaconda-client (1.0.2) 
audioread (2.1.5) 
awscli (1.11.170) 
boto3 (1.4.7) 
botocore (1.7.28) 
clyent (0.4.0) 
colorama (0.3.7) 
conda (3.16.0) 
conda-env (2.4.2) 
Cython (0.27.1) 
decorator (4.1.2) 
docutils (0.14) 
jmespath (0.9.3) 
joblib (0.11) 
librosa (0.5.1) 
llvmlite (0.7.0.dev0+21.gcda19bd.dirty) 
mock (2.0.0) 
numba (0.35.0) 
numpy (1.13.3) 
pbr (3.1.1) 
Pillow (2.9.0) 
pip (9.0.1) 
protobuf (3.4.0) 
pyasn1 (0.3.7) 
PyAudio (0.2.11) 
pycosat (0.6.1) 
pycrypto (2.6.1)  
python-dateutil (2.6.1) 
pytz (2015.4) 
PyYAML (3.12) 
requests (2.7.0) 
resampy (0.2.0) 
rsa (3.4.2) 
s3transfer (0.1.11) 
scikit-learn (0.18.2) 
scipy (0.19.1) 
setuptools (18.1) 
six (1.11.0) 
tensorflow (1.1.0) 
Werkzeug (0.12.2) 
wheel (0.30.0) 

は、しかし、次のエラーがスローされます:インポートnumbaしようとして

[email protected]:~ $ python 
Python 3.4.3 |Continuum Analytics, Inc.| (default, Aug 21 2015, 00:53:08) 
[GCC 4.6.3] on linux 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import librosa 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/librosa/__init__.py", line 12, in <module> 
    from . import core 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/librosa/core/__init__.py", line 108, in <module> 
    from .time_frequency import * # pylint: disable=wildcard-import 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/librosa/core/time_frequency.py", line 10, in <module> 
    from ..util.exceptions import ParameterError 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/librosa/util/__init__.py", line 70, in <module> 
    from . import decorators 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/librosa/util/decorators.py", line 67, in <module> 
    from numba.decorators import jit as optional_jit 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/__init__.py", line 12, in <module> 
    from .special import typeof, prange 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/special.py", line 4, in <module> 
    from .parfor import prange 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/parfor.py", line 20, in <module> 
    from numba import array_analysis, postproc, typeinfer 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/array_analysis.py", line 9, in <module> 
    from numba import ir, analysis, types, config, cgutils, typing 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/cgutils.py", line 22, in <module> 
    true_bit = bool_t(1) 
TypeError: 'IntType' object is not callable 
>>> 

は、次のエラーがスローされます。

[email protected]:~ $ python 
Python 3.4.3 |Continuum Analytics, Inc.| (default, Aug 21 2015, 00:53:08) 
[GCC 4.6.3] on linux 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import numba 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/__init__.py", line 12, in <module> 
    from .special import typeof, prange 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/special.py", line 4, in <module> 
    from .parfor import prange 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/parfor.py", line 20, in <module> 
    from numba import array_analysis, postproc, typeinfer 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/array_analysis.py", line 9, in <module> 
    from numba import ir, analysis, types, config, cgutils, typing 
    File "/home/pi/miniconda3/lib/python3.4/site-packages/numba/cgutils.py", line 22, in <module> 
    true_bit = bool_t(1) 
TypeError: 'IntType' object is not callable 
>>> 

は、問題が何ができるか誰も手掛かりをしていますか? ヒントやヒントに感謝します。 ありがとうございます!!!!!

答えて

2

最新のRaspbianリリースではllvm-3.8が使用されていますので、this github commentにはllvmlite v0.15.0とnumba v0.30.1をインストールする必要があります。異なるllvmを使用している場合は、llvmのバージョンで使用するllvmliteとnumbaのバージョンを調べる必要があります。それ以外の場合は、Fortran & Cの依存関係を取得するのは難しい、私はvirtualenvのとシステムパッケージからscipyのダウンロードとnumpyの中にドラッグを使用してい

sudo apt install libblas-dev llvm python3-pip python3-scipy 
virtualenv --system-site-packages -p python3 env 
source env/bin/activate 
pip install llvmlite==0.15.0 
pip install numba==0.30.1 
pip install librosa 

注: はここで私が成功したimport librosaを取得するように設定しましたコマンドですRPiでコンパイルするには年齢がかかる。システムワイドにインストールする場合は、2行目と3行目を削除し、pipコマンドの前にsudoを置きます。私もこのrequirements.txtファイルで自分の要件を凍結しましたので、ダウンロードすれば1つのコマンドを実行できますpip install -r requirements.txt

+0

それは働きました。どうもありがとうございます! –

+0

私はこれを試しましたが、次のようになります:エラー:root @ raspberrypi:/ home/pi#sudo pip3 install llvmite == 0.15.0 ダウンロード/アンパックllvmite == 0.15.0 要件を満たすダウンロードが見つかりませんでしたllvmite == 0.15.0 クリーンアップ... llvmite == 0.15.0については一切の情報がありません /root/.pip/pip.logのエラーのデバッグログを格納しています –

+0

単にタイプミスのようですllvmite == 0.15.0にする必要がありますが、llvmite == 0.15.0と書かれています。 –

0

ありがとう@MatthewBerryman、あなたは私を悩まされました!最新のRaspianリリース(ストレッチ)では、Raspian jessie(私のRPi3が付属)にlibrosaをインストールしようとしたことの数時間の不満の後、次のことで成功しました。これを言って、次の手順はjessieでも動作します。

まず、お使いのシステムのパッケージリストを更新し、コマンドを使用して、彼らの最新バージョンにすべてのインストールパッケージをアップグレード:

sudo apt-get update 
sudo apt-get dist-upgrade 

Pythonの科学・スタックのインストール:

sudo pip3 install numpy --upgrade 
sudo apt-get install python3-pandas 

を(また、matplotlibのをインストールしているようです、scipy)

sudo apt-get install python3-sklearn 

次に、低レベルの仮想ママllvm-3.8をインストールした後、llvmliteをインストールする前にシンボリックリンクを定義する必要があります。llvm-3.8をインストールしたら、llvmiteをインストールする前にシンボリックリンクを定義する必要があります。

sudo apt-get install llvm-3.8 
sudo ln -s /usr/bin/llvm-config-3.8 /usr/bin/llvm-config 
sudo pip3 install llvmlite==0.15.0 
sudo pip3 install numba==0.32.0 

それは(0.36)最新だ場合、それが原因でLLVMの不一致インポートされません、それは低いバージョンだ場合、librosaがインストールのでNumbaは、最新バージョンにアップグレードします0.32.0です。これはそれを修正するだろう、このエラーが示されているグーグルすなわち、

ImportError: libf77blas.so.3: cannot open shared object file: No such file or directory 

をlibrosaをインポートしようとしたとき

sudo pip3 install librosa 

は、しかし、それはまだスローし、エラー:

最後に、librosaをインストール

sudo apt-get install libatlas-base-dev 

それはそうでした。しかし、なぜ私は考えていない。要約する

、この手順はlibrosaをインストールし、これをしようとしたときにエラーがありません:

...$ python3 
Python 3.5.3 (default, Jan 19 2017, 14:11:04) 
... 
>>>import librosa 
>>> 
関連する問題