Datastax Python cassandra驱动程序在Ubuntu上构build失败

我试图在Ubuntu 14.04.5上安装Datastax Python Cassandra驱动程序。 LTS。 安装成功,但随后尝试使用它失败,出现错误:

欢迎来到Ubuntu 14.04.5 LTS(GNU / Linux 3.13.0-91-generic x86_64)
 〜$ python3 --version
 Python 3.5.2
 〜$ python3 -c'import cassandra; 打印(卡桑德拉.__ version__)”
 3.7.0
 〜$ python3 cassandra_loader.py
回溯(最近一次通话最后):
  文件“cassandra_loader.py”,第7行,在 
    从cassandra_tools导入transform_record,QueryManager
  文件“../lib/cassandra_tools.py”,第6行, 
    从cassandra.cluster导入集群
   ImportError:/usr/local/lib/python3.5/site-packages/cassandra/cluster.cpython-35m-x86_64-linux-gnu.so:undefined symbol:PyException_Check

相同的安装过程和相同的代码在RedHat上运行良好。 Googlesearch错误代码不会返回任何内容。 任何人都有可能是什么问题的想法?

Solutions Collecting From Web of "Datastax Python cassandra驱动程序在Ubuntu上构build失败"

这是这个问题的重复: cluster.cpython-34m.so:未定义的符号: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

您可能需要首先从站点包中删除现有的cassandra-driver包:

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

有关更多信息,请参见https://datastax-oss.atlassian.net/browse/PYTHON-656

我们刚刚发布了一个补丁版本3.7.1来解决由新版本的Cython引起的问题。 升级您的cassandra驱动程序:

  pip install --upgrade cassandra-driver