2017-10-26 13 views
1

私は科学計算には新しく、scipyに貢献しようとしていますが、それを構築することはできません。私のscipyビルドが中断するのはなぜですか?

I git clone '次に、ソースはpython setup.py buildになりました。

scipy/special/cephes/bdtr.c: In function ‘cephes_bdtrc’: scipy/special/cephes/bdtr.c:157:5: error: non-floating-point argument in call to function ‘__builtin_isnan’ if (npy_isnan(k) || npy_isnan(n) || npy_isnan(p)) {

Ubuntu 16.04、Intel i7。他の仕事のために、私はAnaconda 1.6.3をインストールしました。 Python 2.7.13とgfortranです。

セットアップherehereに従った。

アイデア?多分gccスイッチですか?

+0

あなたは 'sudo apt-get install gcc gfortran python-dev libblas-dev liblapack-dev cython'も実行しましたか? – percusse

+0

@percusseええ、確かにしました。 – davidh

+0

質問に答えることはできませんが、私はscipy(他にもたくさんの便利なもの)を含む、最初からAnaconda(現在は5.0.1です)をインストールします。 – user8153

答えて

2

これは、この特定のscipy/numpyの組み合わせのバグです。 nkは整数変数なので、commit ede5590b12dbeecd244fdafa4443b6c3a9d9ef40 (BUG: special: fix ufunc results for nan arguments)で導入されたNaNにすることはできません。

問題が上流に固定されるまで、あなたは

if (npy_isnan(p)) { 

にローカルに報告ラインを変更することができます。

+0

私はnumpy 1.11.2 - > 1.13.1から 'conda update --all'を使ってアップグレードし、最新のscipy repoをこのバグの修正で引っ張りました。ありがとう! – davidh

関連する問題