2016-10-26 2 views
6

私はUbuntu 14.04.5にDatastax Python Cassandraドライバをインストールしようとしていました。 LTS。インストールは成功しますが、その後の使用は次のエラーで失敗します。Datastax Python cassandraドライバビルドがUbuntuで失敗する

 
Welcome to Ubuntu 14.04.5 LTS (GNU/Linux 3.13.0-91-generic x86_64) 
~$ python3 --version 
Python 3.5.2 
~$ python3 -c 'import cassandra; print(cassandra.__version__)' 
3.7.0 
~$ python3 cassandra_loader.py 
Traceback (most recent call last): 
    File "cassandra_loader.py", line 7, in 
    from cassandra_tools import transform_record, QueryManager 
    File "../lib/cassandra_tools.py", line 6, in 
    from cassandra.cluster import Cluster 
    ImportError: /usr/local/lib/python3.5/site-packages/cassandra/cluster.cpython-35m-x86_64-linux-gnu.so: undefined symbol: PyException_Check 

同じインストールプロセスと同じコードがRedHatでうまくいきます。エラーコードのGoogle検索では何も返されません。誰が問題になるのか考えている人はいますか?

+1

私も製造上の同じ問題に直面しています。 カサンドラ/ cluster.c:7:16461ドライバを構築しながら、この警告を観察警告:関数の暗黙の宣言「PyException_Check」[-Wimplicit関数宣言] __pyx_t_15 = PyException_Check(__ pyx_v_f)。 ^ –

+0

私たちは同じ問題を抱えています。これは12時間前に発生しました。何か、私たちはPython2.7を使用していますが、 – vovaminiof

+0

https://datastax-oss.atlassian.net/browse/PYTHON-656回避策がここに記載されています – vovaminiof

答えて

3

これは、この質問の重複です:cluster.cpython-34m.so: undefined symbol: PyException_Check

私はそこに答えが、ここで私はコメントすることはできませんと答えのコピーです。


Cython(0.25)の最新バージョンが本日、cassandra-driverを壊しました。

この問題を回避するには、cassandra-driverをインストールする前にCython == 0.24.1をインストールするようにしてください。あなたは、サイトのパッケージから最初の既存のカサンドラ・ドライバパッケージを削除する必要があり

(env) $ pip install Cython==0.24.1 (env) $ pip install cassandra-driver

rm -r $WHERE_PYTHON_IS_INSTALLED/lib/python2.7/site-packages/cassandra*

を私達はちょうどパッチのバージョン3.7をリリースしたより多くの情報

1

ためhttps://datastax-oss.atlassian.net/browse/PYTHON-656を参照してください。 .1新しいバージョンのCythonに起因する問題を修正しました。あなたのcassandraドライバをアップグレードしてください:

pip install --upgrade cassandra-driver 
+0

私は、 django-cassandra-engine == 0.11.1(http://r4fek.github.io/django-cassandra-engine/)でcassandra-driverを使用していて、3.7.1でこのエラーが発生しています: 'cassandra.cqlengine。 CQLEngineException:接続名 '<0x7f47b75b1740のオブジェクトオブジェクト>'がレジストリに存在しません。それはcassandra-driver == 3.6.0でうまくいきました。問題が鉱山、django-cassandra-engine、またはcassandra-engineの場合は本当にわかりません。それでも探している。 – berto

+0

上記のようにCythonを0.24.1に固定し、Cassandraのバージョンを3.6.0に保つことが私の仕事でした。 – berto

関連する問題