salir por pasos para mover guardar editar copiar consola como cambios archivo linux oracle python-2.5 cx-oracle

linux - por - cx_Oracle: distutils.errors.DistutilsSetupError: no puede localizar los archivos de inclusiĆ³n de Oracle



salir de vim ubuntu (4)

Necesito instalar cx_Oracle para Python 2.5 en Linux (Linux 2.6.18-371.1.2.el5 i686). He instalado el cliente de Oracle 10.2.0.4.

He intentado lo siguiente: 1. Descargue cx_Oracle tar.gz desde http://sourceforge.net/projects/cx-oracle/files/ . No sé cuáles de las versiones enumeradas son adecuadas para Python 2.5 y Oracle Client 10.2.0.4, así que intente cx_Oracle-5.1.tar.gz. Desempaquetado tar, vaya a la carpeta desempaquetada y ejecute python setup.py install. Me equivoque

Traceback (most recent call last): File "setup.py", line 187, in <module> raise DistutilsSetupError("cannot locate Oracle include files") distutils.errors.DistutilsSetupError: cannot locate Oracle include files

En .bash_profile he establecido la ruta de Oracle:

export ORACLE_HOME=/usr/oracle/10.2.0.4/client export PATH=$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib

¿Cómo corregir tal error, tal vez necesito otra versión de cx_Oracle tar?

  1. Ejecuta pip install cx_Oracle. Error conseguido

Descarga / desembalaje de cx-Oracle

Cannot fetch index base URL https://pypi.python.org/simple/ Could not find any downloads that satisfy the requirement cx-Oracle No distributions at all found for cx-Oracle

¿Podría alguien aconsejarme la solución correcta?

Actualización Después de sugerencia en respuesta, recibí el siguiente error:

... cx_Oracle.c:496: warning: passing argument 3 of âPyModule_AddIntConstantâ makes integer from pointer without a cast cx_Oracle.c:497: error: âOCI_UCBTYPE_EXITâ undeclared (first use in this function) cx_Oracle.c:497: warning: passing argument 3 of âPyModule_AddIntConstantâ makes integer from pointer without a cast cx_Oracle.c:498: error: âOCI_UCBTYPE_REPLACEâ undeclared (first use in this function) cx_Oracle.c:498: warning: passing argument 3 of âPyModule_AddIntConstantâ makes integer from pointer without a cast error: command ''gcc'' failed with exit status 1


  1. Instalar oracle_client_basic

    oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm

  2. Usando pip instalar

    python -m pip install cx_Oracle

  3. Añadiendo ldconfig

    1. Encuentre la ubicación de su cliente, por ejemplo: /u01/app/oracle/product/11.2.0/client_1/lib
    2. vi /etc/ld.so.conf.d/oracle.conf

      Añadir esta ubicación en él:

      /u01/app/oracle/product/11.2.0/client_1/lib

    3. ldconfig
  4. import cx_oracle


Asegúrese de tener un cliente sdk presente en su ruta.

También tuve que hacer agregar esto a mi .bash_rc

export DYLD_LIBRARY_PATH=$ORACLE_HOME

Además de esto, Python 2.7 no viene con Python.h, que está disponible de forma predeterminada en Python 3.4. Así que también sugiero instalar el paquete python-devel

yum install python-devel

Eso debería resolver el problema.


Cuando ejecute setup.py, buscará cualquiera de estas carpetas en su ORACLE_HOME.

possibleIncludeDirs = ["rdbms/demo", "rdbms/public", "network/public", "sdk/include"]

Además, el cliente instantáneo a veces coloca los archivos de inclusión, como oci.h, en / usr / include / oracle // client, si no hay un directorio ''include'' en ORACLE_HOME cree un enlace simbólico.

sudo ln -s /usr/include/oracle/11.2/client $ORACLE_HOME/include

Parece que te estás perdiendo el SDK del cliente