NorSeb Posté 20 Septembre 2005 Posté 20 Septembre 2005 Bonjour, Voici mon problème. Ma société édite des progiciels. L'un d'entre eux est développé en C et compilé de façon à pouvoir être utilisé comme une bibliothèque dynamique (une DLL sous Windows ou un .so sous Unix/Linux). Mon projet consiste à développer une extension de php qui ferais appel à la fonction de la DLL de façon à ce que nos clients puisse utiliser l'appli sur le Web. Je me suis donc mis à la tache en utilisant l'API Zend. J'ai suivi pas à pas les explications et descriptions de la doc. J'en suis à l'étape suivante, c'est à dire, à tenter d'adapter ceci à mon projet. Le problème est que je doit inclure la dll (admettons qu'elle se nomme bibli.so et que la fonction s'appelle bibli() ) Après avoir compilé l'extension (test.c -> test.o) je créé ensuite la librairie test.so en faisant le lien entre test.o et bibli.so. (Je sais ca parait un peu compliqué) Or le problème est quand j'appelle la librairie en php grâce à la commande : dl('test.so'); il me renvoi l'erreur suivante : Unable to load dynamic library '/usr/lib/php4/20010901/test.so' - bibli.so cannot open shared object file : No such file or directory in /home/public_html/index.php on line 3 Des suggestions ?
Dan Posté 20 Septembre 2005 Posté 20 Septembre 2005 C'est peut-être idiot comme réponse, mais ... La bibliothèque est-elle bien dans le répertoire "extension_dir" mentionné dans le fichier php.ini ? Dans l'affirmative, est-elle lisible par l'utilisateur ?
NorSeb Posté 20 Septembre 2005 Auteur Posté 20 Septembre 2005 C'est peut-être idiot comme réponse, mais ...La bibliothèque est-elle bien dans le répertoire "extension_dir" mentionné dans le fichier php.ini ? Dans l'affirmative, est-elle lisible par l'utilisateur ? <{POST_SNAPBACK}> Je vais voir si ca marche... En tout cas, ca ne parait pas idiot
NorSeb Posté 20 Septembre 2005 Auteur Posté 20 Septembre 2005 C'est peut-être idiot comme réponse, mais ...La bibliothèque est-elle bien dans le répertoire "extension_dir" mentionné dans le fichier php.ini ? Dans l'affirmative, est-elle lisible par l'utilisateur ? <{POST_SNAPBACK}> En fait, c'est la bibliothèque appellée par celle ajoutée dans php qu'il ne trouve pas...
NorSeb Posté 20 Septembre 2005 Auteur Posté 20 Septembre 2005 Trouvé ! Il s'agissait d'enrichir la variable d'environnement LD_LIBRARY_PATH... Hé bé...
Dan Posté 20 Septembre 2005 Posté 20 Septembre 2005 Donc c'était vien cela... librairie non trouvée ! Les raisons pouvaient être multiples
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant