Exécutable variable d'environnement
nark
Membre
Salut à tous,
Je suis sur le développement d'un framework Cocoa, et d'une application l'utilisant. Mon framework encapsule des librairies statiques C-ANSI/C++ et fait office de "wrapper" pour bon nombre de fonctionnalités. Après plusieurs semaines d'acharnement, je peux dire que ça commence à marcher pas mal.
Les librairies que j'utilise nécessitent de configurer une variable d'environnement (VE). Dans Xcode (3.2.2), j'ai configuré mon exécutable (application accompagnant le framework) en incluant cette VE, et ça marche à merveille lorsque je "Build".
Seulement j'ai eu une belle surprise en testant mon application en dehors d'Xcode. Les retours de logs des librairie du framework me retournent une erreur disant que la VE n'a pas été spécifiée. Comme si la configuration de la variable n'était pas prise en compte.
Si je lance mon application à travers un Terminal, en ayant au préalable exporté ma VE, tout ce passe très bien.
Quelqu'un a-t-il déjà rencontré ce genre de problème avec les VE et Xcode ?
Le problème viendrait-il des multiples couches d'encapsulation (libraire+framework+app) ?
Y a t'il d'autres moyens de spécifier une VE pour un exécutable en particulier ?
Merci d'avance pour votre aide,
Narkâ„¢
Je suis sur le développement d'un framework Cocoa, et d'une application l'utilisant. Mon framework encapsule des librairies statiques C-ANSI/C++ et fait office de "wrapper" pour bon nombre de fonctionnalités. Après plusieurs semaines d'acharnement, je peux dire que ça commence à marcher pas mal.
Les librairies que j'utilise nécessitent de configurer une variable d'environnement (VE). Dans Xcode (3.2.2), j'ai configuré mon exécutable (application accompagnant le framework) en incluant cette VE, et ça marche à merveille lorsque je "Build".
Seulement j'ai eu une belle surprise en testant mon application en dehors d'Xcode. Les retours de logs des librairie du framework me retournent une erreur disant que la VE n'a pas été spécifiée. Comme si la configuration de la variable n'était pas prise en compte.
Si je lance mon application à travers un Terminal, en ayant au préalable exporté ma VE, tout ce passe très bien.
Quelqu'un a-t-il déjà rencontré ce genre de problème avec les VE et Xcode ?
Le problème viendrait-il des multiples couches d'encapsulation (libraire+framework+app) ?
Y a t'il d'autres moyens de spécifier une VE pour un exécutable en particulier ?
Merci d'avance pour votre aide,
Narkâ„¢
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Pour ceux que cela intéresse, il faut utiliser la p-list de l'application et ajouter le champ LSEnvironment pour définir des VE propres à l'exécutable. Le faire dans les propriétés de l'exécutable dans Xcode ne suffit pas (fonctionne que dans un shell).
Hope that helps.
Narkâ„¢