2012-09-20 1 views

Répondre

0

Je n'ai pas la source de setup.py de cx_Oracle devant moi en ce moment, mais dans le fichier BUILD.txt inclus avec elle, il mentionne l'utilisation de certaines variables d'environnement:

Il est nécessaire pour définir des variables d'environnement ORACLE_HOME et LD_LIBRARY_PATH intérieur $ HOME/.profile afin cx_Oracle d'importer correctement après l'installation et afin de construire correctement. En utilisant un éditeur de texte ajouter les paramètres ci-dessous pour $ HOME/.profile en veillant à changer l'emplacement de votre chemin d'installation réelle.

Example ($HOME/.profile): 
------------------------- 
export ORACLE_HOME=[your installation path]/instantclient_11_1 
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME 

Ce de la section pour des conseils Linux, je me souviens que je devais régler les mêmes choses pour le construire sous Windows.

En ce qui concerne la façon dont il trouve les bibliothèques plus standard. Je pense que cela fait partie de la magie du module distutils. Sous unix distutils semble généralement fonctionner tant que les bibliothèques et les en-têtes requis ont été installés via le mécanisme d'emballage standard de votre Unix. Ceci est probablement dû au fait que Unix a des moyens mieux normalisés de localiser les ressources de construction (que Windows ne le fait par exemple).

Je sais quand je suis obligé de compiler les paquets Python sous Windows, je dois souvent dire explicitement où trouver les fichiers d'en-tête et les bibliothèques. Après avoir dû sortir et trouver lesdites bibliothèques et les compiler manuellement.

+1

Merci pour la réponse rapide. Dans mon cas, je construis sur Linux, Sparc et Solarix x86. Pour les variables mentionnées (ORACLE_HOME, LD_LIBRARY_PATH), j'ai défini l'environnement en conséquence. Cependant, les dépendances de construction telles que readline et db ne proviennent pas de ce chemin. Donc, je ne comprends toujours pas où il obtient ses défauts. –

Questions connexes