IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Ubuntu 10.04, PHP 5.3 et Oracle


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 138
    Par défaut Ubuntu 10.04, PHP 5.3 et Oracle
    Bonjour à tous

    J'essaye un peu desespérément de re installer oracle après une mise à jour de Ubuntu 9.10 vers la 10.04, qui m'a changé la version de PHP et donc perdu toutes mes configs / installs.

    Je suis ce tutoriel : http://www.lacot.org/blog/2009/11/03...t-install.html , mais ça plante au make de PDO-1.0.3. J'ai un autre PC sous Ubuntu 9.10, et ça marche.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    /bin/bash /home/steevanb/PDO-1.0.3/libtool --mode=compile cc  -I. -I/home/steevanb/PDO-1.0.3 -DPHP_ATOM_INC -I/home/steevanb/PDO-1.0.3/include -I/home/steevanb/PDO-1.0.3/main -I/home/steevanb/PDO-1.0.3 -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64  -DHAVE_CONFIG_H  -g -O2   -c /home/steevanb/PDO-1.0.3/pdo_dbh.c -o pdo_dbh.lo 
    libtool: compile:  cc -I. -I/home/steevanb/PDO-1.0.3 -DPHP_ATOM_INC -I/home/steevanb/PDO-1.0.3/include -I/home/steevanb/PDO-1.0.3/main -I/home/steevanb/PDO-1.0.3 -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_CONFIG_H -g -O2 -c /home/steevanb/PDO-1.0.3/pdo_dbh.c  -fPIC -DPIC -o .libs/pdo_dbh.o
    /home/steevanb/PDO-1.0.3/pdo_dbh.c: In function ‘pdo_stmt_instantiate’:
    /home/steevanb/PDO-1.0.3/pdo_dbh.c:410: error: ‘zval’ has no member named ‘refcount’
    /home/steevanb/PDO-1.0.3/pdo_dbh.c:411: error: ‘zval’ has no member named ‘is_ref’
    /home/steevanb/PDO-1.0.3/pdo_dbh.c: In function ‘pdo_stmt_construct’:
    /home/steevanb/PDO-1.0.3/pdo_dbh.c:435: error: ‘zend_fcall_info’ has no member named ‘object_pp’
    /home/steevanb/PDO-1.0.3/pdo_dbh.c:458: error: ‘zend_fcall_info_cache’ has no member named ‘object_pp’
    /home/steevanb/PDO-1.0.3/pdo_dbh.c: In function ‘zim_PDO_setAttribute’:
    /home/steevanb/PDO-1.0.3/pdo_dbh.c:752: error: ‘zval’ has no member named ‘refcount’
    /home/steevanb/PDO-1.0.3/pdo_dbh.c: In function ‘zim_PDO_getAttribute’:
    /home/steevanb/PDO-1.0.3/pdo_dbh.c:818: error: ‘zval’ has no member named ‘refcount’
    /home/steevanb/PDO-1.0.3/pdo_dbh.c: In function ‘pdo_hash_methods’:
    /home/steevanb/PDO-1.0.3/pdo_dbh.c:1122: warning: assignment discards qualifiers from pointer target type
    /home/steevanb/PDO-1.0.3/pdo_dbh.c:1126: warning: assignment discards qualifiers from pointer target type
    Je suis complètement bloqué, je ne sais pas quoi faire. Quelqu'un a une idée pour corriger ce problème, une autre méthode pour installer oci, ou les versions déja compilées de PDO, oci et pdo_oci ?

    Merci

  2. #2
    Invité de passage
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 1
    Par défaut meme probleme
    Bonjour

    J'ai le meme probleme, je n'arrive pas a comprendre.
    Avez vous une solution ?

    jerome

  3. #3
    Membre confirmé Avatar de bankette
    Homme Profil pro
    Chef de Projet Web
    Inscrit en
    Mars 2007
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de Projet Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2007
    Messages : 135
    Par défaut
    Je me permet de remonter ce topic...
    J'ai exactement le même problème. Et pas de solutions pour le moment.
    Si quelqu'un a une idée

    Je continue de chercher...

    Merci !

  4. #4
    Invité de passage
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 1
    Par défaut Installation d'Oracle Instant Client 11g pour PHP 5.3 sous Ubuntu 10.04 avec support PDO
    Il peut rester qq bogues dans la procédure car j'ai un peu gratté avant d'y arriver...
    Note: on peut remplacer les 'sudo vi' par des 'gksudo gedit' pour plus de confort d'édition de fichiers texte ...

    1. Installer libaio1 (prérequis Oracle 11g).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo apt-get install libaio1
    2. Installer alien:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo apt-get install alien
    3. Télécharger les RPMs ici: http://www.oracle.com/technetwork/da...ex-097480.html Prendre les fichiers RPM Basic, Devel et SqlPlus pour votre architecture.

    4. Convertir les RPMs en .deb avec alien (ignorer l'erreur alien qui peut se produire):

    Code (i386):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sudo alien oracle-instantclient11.2-basic-11.2.0.1.0-1.i386.rpm
    sudo alien oracle-instantclient11.2-devel-11.2.0.1.0-1.i386.rpm
    sudo alien oracle-instantclient11.2-sqlplus-11.2.0.1.0-1.i386.rpm
    Code (x64):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sudo alien oracle-instantclient11.2-basic-11.2.0.1.0-1.x86_64.rpm
    sudo alien oracle-instantclient11.2-devel-11.2.0.1.0-1.x86_64.rpm
    sudo alien oracle-instantclient11.2-sqlplus-11.2.0.1.0-1.x86_64.rpm
    5. Installer les paquets debian:

    Code (i386):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sudo dpkg -i oracle-instantclient11.2-basic_11.2.0.1.0-2_i386.deb
    sudo dpkg -i oracle-instantclient11.2-devel_11.2.0.1.0-2_i386.deb
    sudo dpkg -i oracle-instantclient11.2-sqlplus_11.2.0.1.0-2_i386.deb
    Code (x64):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sudo dpkg -i oracle-instantclient11.2-basic_11.2.0.1.0-2_x86_64.deb
    sudo dpkg -i oracle-instantclient11.2-devel_11.2.0.1.0-2_x86_64.deb
    sudo dpkg -i oracle-instantclient11.2-sqlplus_11.2.0.1.0-2_x86_64.deb
    6. On peut vérifier que l'installation de Oracle Instant Client 11g s'est bien passée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo aptitude search oracle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    p   cl-sql-oracle                                               - CLSQL database backend, Oracle                                      
    p   libmono-oracle1.0-cil                                       - Mono Oracle library (for CLI 1.0)                                   
    p   libmono-oracle2.0-cil                                       - Mono Oracle library (for CLI 2.0)                                   
    i   oracle-instantclient11.2-basic                              - Instant Client for Oracle Database 11g                              
    i   oracle-instantclient11.2-devel                              - Development headers for Instant Client.                             
    i   oracle-instantclient11.2-sqlplus                            - SQL*Plus for Instant Client.                                        
    p   spamoracle                                                  - A statistical analysis spam filter based on Bayes' formula          
    v   spamoracle-byte                                             -
    7. Installer le pilote PDO pour Oracle: pdo_oci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    sudo apt-get install php5-dev php-pear
    cd /tmp
    pecl download PDO_OCI
    tar xzvf PDO_OCI-1.0.tgz
    cd ../PDO_OCI-1.0
    PDO_OCI-1.0 ne supporte pas la version 11g d'Oracle, mais il est facile de le modifier pour celà.
    Vous devez créer un fichier config.m4.patch avec le contenu suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    --- config.m4    2005-09-25 01:23:24.000000000 +0200
    +++ config.m4.new    2010-09-01 13:03:43.030964765 +0200
    @@ -7,6 +7,8 @@
      if test -s "$PDO_OCI_DIR/orainst/unix.rgs"; then
        PDO_OCI_VERSION=`grep '"ocommon"' $PDO_OCI_DIR/orainst/unix.rgs | sed 's/[ ][ ]*/:/g' | cut -d: -f 6 | cut -c 2-4`
        test -z "$PDO_OCI_VERSION" && PDO_OCI_VERSION=7.3
    +  elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.11.1; then
    +    PDO_OCI_VERSION=11.1   
      elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.10.1; then
        PDO_OCI_VERSION=10.1   
      elif test -f $PDO_OCI_DIR/lib/libclntsh.$SHLIB_SUFFIX_NAME.9.0; then
    @@ -119,6 +121,12 @@
        10.2)
          PHP_ADD_LIBRARY(clntsh, 1, PDO_OCI_SHARED_LIBADD)
          ;;
    +    11.1)
    +      PHP_ADD_LIBRARY(clntsh, 1, PDO_OCI_SHARED_LIBADD)
    +      ;;
    +    11.2)
    +      PHP_ADD_LIBRARY(clntsh, 1, PDO_OCI_SHARED_LIBADD)
    +      ;;
        *)
          AC_MSG_ERROR(Unsupported Oracle version! $PDO_OCI_VERSION)
          ;;
    Ensuite appliquez le patch

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    patch config.m4 config.m4.patch
    Et finalement construisez le et installez le:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    phpize
    ./configure --with-pdo-oci=instantclient,/usr,11.2
    make
    sudo make install
    8. Ajoutez les libs Oracle et PDO_OCI dans le php.ini

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo vi /etc/php5/apache2/conf.d/oci8.ini
    Insérez le contenu suivant et sauvegardez:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    extension=oci8.so
    #extension=pdo.so
    extension=pdo_oci.so
    9. Ajouter les librairies Oracle client dans le chemin d’accès des librairies

    Créer un fichier /etc/ld.so.conf.d/oracle11-2.conf

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo vi /etc/ld.so.conf.d/oracle11-2.conf
    Avec le contenu suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/lib/oracle/11.2/client/lib
    10. Redémarrer apache

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sudo /etc/init.d/apache2 restart

  5. #5
    Membre confirmé Avatar de bankette
    Homme Profil pro
    Chef de Projet Web
    Inscrit en
    Mars 2007
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de Projet Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2007
    Messages : 135
    Par défaut
    Merci pour ce retour !!!

    J'avais finalement réussi, mais j'avais tellement bidouillé et installé de paquet que je ne savais meme pas moi meme quelle était la solution....

    Je garde ça sous le coude si je dois réinstaller un 11G sur ubuntu

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 179
    Par défaut
    [QUOTE=firezone;5447817]Il peut rester qq bogues dans la procédure car j'ai un peu gratté avant d'y arriver...

    Bonjour,
    J'ai tenté l'installation sur une Lenny avec un instantclient 10.2.0.4, mais j'obtiens toujours le même message d'erreur :
    checking for oci.h... configure: error: I'm too dumb to figure out where the include dir is in your instant client install

    Avez-vous une idée ?
    merci d'avance,

Discussions similaires

  1. [Oracle] PHP connexion ODBC vers oracle
    Par enzo68290 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/07/2012, 00h14
  2. interface php ou asp avec oracle
    Par PHPkoala dans le forum Outils
    Réponses: 0
    Dernier message: 08/02/2008, 12h28
  3. [UBUNTU] Configuration de PHP
    Par Hug0_76 dans le forum Ubuntu
    Réponses: 2
    Dernier message: 06/03/2007, 18h11
  4. [Oracle] PHP 5.2 et Oracle 10g : chargement impossible de l'extension oci8
    Par Nounoursonne dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 25/01/2007, 14h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo