Compilando e instalando o cx_Oracle com python2.4 no Debian
O cx_Oracle é uma interface de conexão ao Oracle para Python e segue todas as especificações da API de banco de dados do Python, com algumas exceções. E como as versões para download no site são em rpm ou tar.gz, vamos baixar o tar.gz e compilar tudo do zero. Pelo menos vamos ter certeza de que está tudo compilado certinho.
Primeiramente fazer o download do cx_Oracle.
Instalar o pacote python2.4-dev que é utilizado pelo cx_Oracle na hora da compilação
#aptitude install python2.4-dev
Agora descompacte e entre no diretório:
#tar -zxvf cx_Oracle-4.2.tar.gz
#cd cx_Oracle-4.2
Agora, vamos compilar os fontes, tenha certeza de ter os pacotes para compilação instalados, gcc, binutils, make...
Bom agora para compilar vamos fazer:
#python setup.py build
Com os pacotes corretos e, claro, seu ORACLE_HOME setado e o seu LD_LIBRARY_PATH=$ORACLE_HOME/lib , configurados...se você quiser ter certeza de que está tudo certinho, digite:
#ldconfig
Bom, deve compilar direitinho e com alguns warnings, mas se compilar, então está tudo bem.
Agora vamos instalar
#python setup.py install
Com isso ele vai jogar o binário do cx_Oracle em /usr/lib/python2.4/site-packages/ e você vai estar pronto para utilizá-lo.
Caso você queira se certificar de que o binário do cx_Oracle está em perfeitas condições, vá em /usr/lib/python2.4/site-packages/ e digite:
#ldd cx_Oracle.so
linux-gate.so.1 => (0xffffe000)
libclntsh.so.10.1 => /usr/lib/oracle/xe/app/oracle/product/10.2.0/server//lib/libclntsh.so.10.1 (0xa714f000) libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xa712a000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xa6ff9000)
libnnz10.so => /usr/lib/oracle/xe/app/oracle/product/10.2.0/server//lib/libnnz10.so (0xa6df4000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xa6df0000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xa6dca000)
libnsl.so.1 => /lib/tls/i686/cmov/libnsl.so.1 (0xa6db4000)
/lib/ld-linux.so.2 (0x75555000)
Tem que estar tudo direitinho assim, caso tenha algum "Not found", é bom verificar se o seu ORACLE_HOME ou o LD_LIBRARY_PATH está configurado direitinho.
Agora para testar, é só ver se o python importa o módulo:
#python
Python 2.4.4c0 (#2, Jul 30 2006, 15:43:58)
[GCC 4.1.2 20060715 (prerelease) (Debian 4.1.1-9)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
>>> cx_Oracle
>>>
Bom, é isso aew, está funcionando.
Caso tenha algum problema, uma boa fonte de pesquisa é:
Os arquivos da mail list do cx_Oracle: aqui
E o google.
Flw, abraço
Primeiramente fazer o download do cx_Oracle.
Instalar o pacote python2.4-dev que é utilizado pelo cx_Oracle na hora da compilação
#aptitude install python2.4-dev
Agora descompacte e entre no diretório:
#tar -zxvf cx_Oracle-4.2.tar.gz
#cd cx_Oracle-4.2
Agora, vamos compilar os fontes, tenha certeza de ter os pacotes para compilação instalados, gcc, binutils, make...
Bom agora para compilar vamos fazer:
#python setup.py build
Com os pacotes corretos e, claro, seu ORACLE_HOME setado e o seu LD_LIBRARY_PATH=$ORACLE_HOME/lib , configurados...se você quiser ter certeza de que está tudo certinho, digite:
#ldconfig
Bom, deve compilar direitinho e com alguns warnings, mas se compilar, então está tudo bem.
Agora vamos instalar
#python setup.py install
Com isso ele vai jogar o binário do cx_Oracle em /usr/lib/python2.4/site-packages/ e você vai estar pronto para utilizá-lo.
Caso você queira se certificar de que o binário do cx_Oracle está em perfeitas condições, vá em /usr/lib/python2.4/site-packages/ e digite:
#ldd cx_Oracle.so
linux-gate.so.1 => (0xffffe000)
libclntsh.so.10.1 => /usr/lib/oracle/xe/app/oracle/product/10.2.0/server//lib/libclntsh.so.10.1 (0xa714f000) libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xa712a000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xa6ff9000)
libnnz10.so => /usr/lib/oracle/xe/app/oracle/product/10.2.0/server//lib/libnnz10.so (0xa6df4000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xa6df0000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xa6dca000)
libnsl.so.1 => /lib/tls/i686/cmov/libnsl.so.1 (0xa6db4000)
/lib/ld-linux.so.2 (0x75555000)
Tem que estar tudo direitinho assim, caso tenha algum "Not found", é bom verificar se o seu ORACLE_HOME ou o LD_LIBRARY_PATH está configurado direitinho.
Agora para testar, é só ver se o python importa o módulo:
#python
Python 2.4.4c0 (#2, Jul 30 2006, 15:43:58)
[GCC 4.1.2 20060715 (prerelease) (Debian 4.1.1-9)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
>>> cx_Oracle
>>>
Bom, é isso aew, está funcionando.
Caso tenha algum problema, uma boa fonte de pesquisa é:
Os arquivos da mail list do cx_Oracle: aqui
E o google.
Flw, abraço
0 Comments:
Post a Comment
<< Home