Python 3.x 在32位Anaconda上安装cx\u Oracle:对于平台,长\u位定义似乎错误
我在64位计算机上,但需要支持传统的32位专有系统 我安装了miniconda 32位版本3.7.1,以及32位oracle客户端。我的Python 3.x 在32位Anaconda上安装cx\u Oracle:对于平台,长\u位定义似乎错误,python-3.x,anaconda,cx-oracle,miniconda,Python 3.x,Anaconda,Cx Oracle,Miniconda,我在64位计算机上,但需要支持传统的32位专有系统 我安装了miniconda 32位版本3.7.1,以及32位oracle客户端。我的ORACLE\u HOME和LD\u LIBRARY\u PATH指向正确的32位ORACLE客户端 我无法安装64位python,因为我需要与32位旧式C库交互。 看起来miniconda的pip正在尝试安装64位cx_Oracle,尽管它是32位python安装 pip安装cx\u Oracle导致以下错误(编辑:以及python-m pip安装cx\u O
ORACLE\u HOME
和LD\u LIBRARY\u PATH
指向正确的32位ORACLE客户端
我无法安装64位python,因为我需要与32位旧式C库交互。
看起来miniconda的pip正在尝试安装64位cx_Oracle,尽管它是32位python安装
pip安装cx\u Oracle
导致以下错误(编辑:以及python-m pip安装cx\u Oracle
):
似乎pip正在尝试安装64位cx_Oracle,尽管这是一个32位python。例如,pip install cx_Oracle
命令显示x86_64
,并且不使用-m32构建
如果我git克隆一个旧版本(如cx_Oracle 5.3)并运行python setup.py install,情况也是如此
如何在32位miniconda安装上安装32位cx_Oracle?使用
conda
安装它(位于pip
旁边的miniconda的bin目录中)可以正常工作
我不确定为什么使用
pip
尝试安装64位版本。可能是因为您使用的pip用于64位Python安装?确保使用“正确”的方法的最好方法是使用以下命令:python-mpipinstallcx_Oracle@AnthonyTuininga我以前使用过python-m pip install cx_Oracle
,但它有相同的错误消息。@AnthonyTuininga我怀疑问题与anaconda/miniconda 32位python有关,而不是与您的库有关,但我不确定。可能他们遇到了同样的问题,修改了cx_Oracle源代码,将其构建为bz2,并将其上传到*conda repo。
running bdist_wheel
running build
running build_ext
building 'cx_Oracle' extension
creating build
creating build/temp.linux-x86_64-3.7
creating build/temp.linux-x86_64-3.7/src
creating build/temp.linux-x86_64-3.7/odpi
creating build/temp.linux-x86_64-3.7/odpi/src
gcc -pthread -B /path/to/miniconda3/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DCXO_BUILD_VERSION=7.3.0 -Iodpi/include -Iodpi/src -I/path/to/miniconda3/include/python3.7m -c src/cxoBuffer.c -o build/temp.linux-x86_64-3.7/src/cxoBuffer.o
/path/to/miniconda3/include/python3.7m/pyport.h:699:2: error:
#error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)."
error: command 'gcc' failed with exit status 1
./conda install -c https://conda.anaconda.org/anaconda cx_oracle