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

Yu *_*hem 6 python linux ubuntu cassandra python-3.x

我试图在Ubuntu 14.04.5上安装Datastax Python Cassandra驱动程序.LTS.安装成功但后续尝试使用它失败并显示错误:

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上运行良好.谷歌搜索错误代码什么都不返回.任何人都知道可能是什么问题?

Men*_*nth 5

这是这个问题的重复: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

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

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

请参阅https://datastax-oss.atlassian.net/browse/PYTHON-656了解更多信息