Simuler un environ avec env -i [Creation d'un Shell] - C - Programmation
Marsh Posté le 15-04-2009 à 13:27:37
Avec des directives de précompilation pour le setter en dur à coup de macro lors de la compilation du shell ?
Parce que de toute façon, faudra que t'en compiles une version par plateforme (pas le même ABI, pas le même OS, peut-être pas la même archi CPU, etc.)
Marsh Posté le 15-04-2009 à 21:01:07
Si env n'est pas transmis, c'est que déjà t'as pas codé ce qu'il faut.
Ensuite pour le reste, y a pas de miracle: un PATH ça s'initialise à partir d'un fichier de démarrage. L'intérêt d'un shell, c'est justement de pas coder ça en dur
Marsh Posté le 17-04-2009 à 15:14:07
@Taz: Les paths stocker en dur sont des paths disponible sur toutes les plateforme (bin/:sbin/...) (on a finalement decider d'utiliser ce conseil prealablement entendu ^^)
Enfait j'aurais besoin de recreer un environ a partir de donner disponible mais pas envoyer a mon executable (HOST, TERMCAP,PWD...)
je dis pas que env n'est pas transmis a chaque appel mais c'est un cas a gerer ^^
@Elmoricq : effectivement ce n'est pas la meme archi CPU et j'ai deja un Makefile multi plateforme.
Merci a vous deux
Marsh Posté le 27-04-2009 à 01:11:20
ReplyMarsh Posté le 27-04-2009 à 15:18:04
J'imagine que tu veux dire "env -i ./Shell", et pas "./Shell env -i" ?
Pour récupérer HOSTTYPE c'est perdu, puisque le but de env -i c'est justement de démarrer un programme avec un environement vide.
Elmoricq t'as donné la bonne solution (pour ce que tu veux faire, ce qui ne veut pas dire que ce que tu veux faire est la bonne solution).
Marsh Posté le 05-05-2009 à 20:53:09
effectivement c'est bien "env -i ./Shell"
mais justement mon but été de faire un env sans env...
En gros environ va bien chercher ses données quelque part !
Je veux allez chercher ses données meme si je dois coder en assembleur ^^
Merci a vous
Marsh Posté le 15-04-2009 à 12:01:52
Bonjour,
Je suis actuellement entrain de coder un shell perso
Je dois le faire tourner sur plusieurs plateforme (unix,linux,cisco?)
Lorsque l'on demare mon programme avec la commande ./Shell env -i, l'environ n'est pas transmis a l'executable.
J'ai donc un fichier avec un path stocker en dur.
Suivant les plateforme, les paths ne sont pas toujours les memes.
Comment recuperer (en assembleur ou en C )
Le HOSTTYPE= , afin de lui balancer les bons paths.
si quelqu'un a une idee sa serait sympa
Leoz
---------------
Worldcraze 10loop