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

Interfaces de programmation Oracle Discussion :

[OCILIB] Compilation et question


Sujet :

Interfaces de programmation Oracle

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut [OCILIB] Compilation et question
    Bonjour

    Dans le cadre de mon travail je suis en train de modifier une application qui utilisait des drivers ODBC pour qu'elle se connecte directement a une base ORACLE. Je fais mes tests avec ORACLE XE et sous unbuntu.

    J'ai compilé OCILIB et l'ai correctement installé (configure, make, make install). Depuis un bout de temps j'ai ORACLE XE.

    J'ai essayé de compiler le programme de demo de OCILIB, mais j'ai cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/bin/ld: warning: libnnz10.so, needed by /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so, not found (try using -rpath or -rpath-link)
    Pour tant j'ai bien libnnz10.so dans /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib
    J'ai vérifié les variables d'environnement etc... tout semble correct.
    Est ce qq un a une idée sur le problème?

    merci a bientot

  2. #2
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Bonsoir,

    Question toute bête : est ce que '/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib' est bien dans LD_LIBRARY_PATH ?

    le makefile de la demo de OCILIB (généré par le configure) indique au linker le chemin d'accès complet au libclntsh.so qui est détécté par l'install. Mais si ce path n'est pas dans LD_LIBRARY_PATH, les libs que cherche à charger le libclntsh ne seront pas détectées...
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    merci
    ca marche nickel

    Par contre un autre souci, l'initialisation ne se pas pas bien et je n'ai aucun message d'erreur.
    Comment faire pour réccupérer l'erreur l'un initialisation de OCI?
    Pour quelle raison est ce que OCI ne peut pas s'initialiser?

    a bientot

  4. #4
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Citation Envoyé par yupa Voir le message
    Par contre un autre souci, l'initialisation ne se pas pas bien et je n'ai aucun message d'erreur.

    C'est à dire ??
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    Désoler je ne devais pas avoir les yeux ou il fallait.
    Je viens de lancer le programe de test et ca marche
    Merci d'avoir répondu a mes questions
    a bientot

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    Arf
    Hier ca marchait et denouveau aujoud'hui l'initialisation ne se fait pas. Je pense que c'est un probleme de lib path mais je ne vois pas ce qui a pu changer depuis la derniere fois.
    J'ai fait un petit strace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strace ./ocilib_demo xe hr hr
    et voila ce que ca donne a la fin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    open("/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libociei.so", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libocixe.so", O_RDONLY) = -1 ENOENT (No such file or directory)
    open("/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libociicus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
    Je n'ai pas trouvé ou était ces fichiers.
    voici mon oracle_home et le ld_library_path :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo $ORACLE_HOME
    /usr/lib/oracle/xe/app/oracle/product/10.2.0/server
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo $LD_LIBRARY_PATH
    /usr/local/lib:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib
    Une idée ?
    merci

  7. #7
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    Le message d'erreur est clair, oracle ne trouve pas ces fichiers !

    1/ as tu les droits sur le $ORACLE_HOME/lib ?
    2/ as tu un libociei.so ou un libociei.x.y.z.so dans $ORACLE_HOME/lib ?
    3/ quel est le contenu de ton .profile ?
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    J'ai bien les droits sur ORACLE_HOME et les lib cherchées ne sont pas dans ORACLE_HOME/lib. D'ailleur je ne les trouve pas.
    Je suis sur ubuntu avec un oracle XE.
    Hier le programe de test s'éxécutait très bien et du premier coup. Je pense que j'ai juste du oublier un path qq par (je suis sur plein de truc en même temps) mais je ne vois pas quoi.

  9. #9
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    comment as tu lancé le configure de ocilib ?
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    J'avais lancé le configure sans paramettre.
    Juste pour vérifier j'ai refait un configure et il bloque :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    checking for OCILIB package... current version is : 2.5.1 
    checking for OCILIB options... import: linkage, charset = ansi 
    checking for Oracle OCI headers location... configure: error: path not found (/rdbms/public)
    J'avais eu cette erreur la premiere fois que j'avais lancé le configure, mais il me semblait l'avoir corrigé en positionnant correctement oracle_home

    j'ai vérifié les variables oracle home et ld library path :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo $ORACLE_HOME
    /usr/lib/oracle/xe/app/oracle/product/10.2.0/server
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo $LD_LIBRARY_PATH
    /usr/local/lib:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib

  11. #11
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    avant le configure, fait un export

    ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server

    puis fait un configure
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    heu... ca marche, le configure et l'execution du programme de démo...
    super, mais j'avais "normallement" ORACLE_HOME correctement positionné. Du moins je ne vois pas comment autre export aurait pu changer qq chose, sauf si le précédant n'était pas bon...
    Je vais me faire un petit .sh avec tous les exports a faire correctement

    Merci beaucoup, du temps que tu as passé a me répondre.

    Ps: Si j'ai bien compris c'est toi qui a fait OCILIB (bravo), il y a des chances que je doive faire une batterie de tests sur AIX dans les mois à venir, et par experience sur AIX les choses se compliquent souvant. En cas de problème est ce que je pourai te contacter directement ?

  13. #13
    Rédacteur
    Avatar de Vincent Rogier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 373
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 373
    Par défaut
    oui, c'est bien moi qui développe OCILIB..

    OCILIB est déjà validée sur AIX 32/64bits (l'installation en AIX 64bits est toujour moins simple...).

    OCILIB v3.0.0 va sortir prochainement (en octobre) et j'ai fait un post pour savoir si des personnes veulent la beta-tester... : Tests de la pré-release v3.0.0 de la librairie OCILIB

    OCILIB est actuellement pas mal utilisée dans le bancaire (dans des grandes banques !) et l'industrie

    Mais dans tous les cas, je suis toujours preneur pour des tests AIX (je n'ai pas personnellement d'accès à un bécane AIX)

    Et tu peux bien évidemment m'envoyer des mail sur mon adresse gmail qui figure dans les sources
    Vincent Rogier.

    Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

    Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

    OCILIB (C Driver for Oracle)

    Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [OCILIB] Compilation sous VS2010
    Par cobfly dans le forum Interfaces de programmation
    Réponses: 1
    Dernier message: 24/09/2010, 16h51
  2. compilation g++, question
    Par rastakouair dans le forum Contribuez
    Réponses: 9
    Dernier message: 30/04/2010, 10h51
  3. [OCILIB] Compilation sous hpux Itanium 64 bits
    Par cobfly dans le forum Interfaces de programmation
    Réponses: 7
    Dernier message: 08/02/2010, 12h01
  4. [OCILIB] compilation sur sun 64bits
    Par joce3000 dans le forum Interfaces de programmation
    Réponses: 3
    Dernier message: 02/06/2009, 15h06
  5. erreur de compilation et questions diverses
    Par Jonkile dans le forum C
    Réponses: 7
    Dernier message: 05/01/2008, 18h25

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