# $PATH et cc malade :( Unixien demandé



## Einbert (26 Octobre 2001)

Bon, après tous mes essais pour installer Windowmaker (qui ne fonctionne toujours pas d'ailleurs) et après avoir été bidouillé des trucs dans des fichiers, ben je me retrouve avec les problèmes suivants (ça ne devrait pas être un problème pour les habitués de Unix à me répondre...):

1) Quand je tape la commande _$path_, ben il devrait m'indiquer le path, mais non, là il me dit :
_ /Users/einbert/bin/powerpc-apple-darwin: Command not found._

2) Quand je tape la commande _echo $path_, voici ce qu'il me répond :
_ /Users/einbert/bin/powerpc-apple-darwin /usr/local/bin /usr/bin /bin /usr/local/sbin /usr/sbin /sbin /Users/einbert/bin /sw/bin /sw/sbin /usr/X11R6/bin /usr/X11R6/bin
_
Ce path me paraît assez bizarre, déjà juste par le fait que /usr/X11R6/bin apparaît 2 fois.
Où se trouve le fichier où stoquer la path de tcsh...Est-ce que c'est /usr/share/init/tcsh/login  ? Je sais que dans le dossier de fink, ben il configure aussi le path en ajoutant /sw/bin et un autre truc et le met même avant le $path, ce que j'ai été changé aussitôt. Mais dans le fichier que je viens d'indiquer ci-dessus avec son chemin d'accès, ben aucune trace de ce /users/einbert/bin/powerpc-apple-darwin !! D'où vient-il celui-ci, resp. dans par quel fichier est-il ajouté ?

3) La chose suivante est le plus grave pour moi, car j'en ai vachement besoin !! Je ne peux plus utiliser la commande 

```

```
Quand je fais par exemple 
	
	



```

```
, ben voici l'erreur qu'il me sort :
_ /usr/bin/ld: /usr/lib/libSystem.dylib load command 6 unknown cmd field _








Quelqu'un a une idée comment réparer et en quoi consiste cette erreur ?? Il me semble que la commande ld a qqch à voir avec tout ce qui toucher les lib graphiques ??

Donc.......*au secours* ....... *help*  Je dois utiliser cc pour mes séries d'info  
	

	
	
		
		

		
		
	


	




  !!


----------



## Gwenhiver (26 Octobre 2001)

Ben c'est tout simple, à force de bidouiller ton PATH, tu as dû y ajouter des erreurs. Résultat : la moitié de tes commandes ne fonctionnent plus.
Ceci dit, vu que tu sembles être allé modifier des trucs dans /usr/share/init/tcsh/login, ça risque d'être chaud. Pour faire les choses proprement, on change généralement le path dans un fichier .login, ou .tcsh que l'on place à la racine de son dossier utilisateur.


----------



## Gwenhiver (26 Octobre 2001)

Si ça peut t'aider, le fichier propre est :

```

```
Essaye déjà de le rétablir en l'état. Si tu n'as pas changé d'autres trucs ailleurs, ton cc devrait fonctionner à nouveau.


----------



## Einbert (27 Octobre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par Gwenhiver:
*Ben c'est tout simple, à force de bidouiller ton PATH, tu as dû y ajouter des erreurs. Résultat : la moitié de tes commandes ne fonctionnent plus.
Ceci dit, vu que tu sembles être allé modifier des trucs dans /usr/share/init/tcsh/login, ça risque d'être chaud. Pour faire les choses proprement, on change généralement le path dans un fichier .login, ou .tcsh que l'on place à la racine de son dossier utilisateur.*<HR></BLOCKQUOTE>

Les commandes de base fonctionnent encore très bien (echo, date, ls, ps, etc..). Concernant le path et ce que j'avais modifié, ben je l'avais déjà été rétablir, mais rien n'y change...Il y a toujours ce phantome de 

```

```
 qui vient de je ne sais où !! En fait j'ai bel et bien un fichier .cshrc dans mon dossier racine utilisateur, mais pas de .tcsh ou de .login...Je le saurai pour les prochaines fois  
	

	
	
		
		

		
		
	


	




 !! Le .cshrc a été créé par fink je crois et dans le dossier fink, resp. dans /sw/bin/csh.init (un truc du style), ben il ajoute lui qqch au path initial, ce que je peux d'ailleurs constater si je fais 
	
	



```

```
...Concernant le problème de cc, je crois que c'est peut-être plus profond, vu que ld fait justement référence au graphique si je ne m'abuse (c.f mon message ci-dessus concernant l'erreur qui se produit!!)...Suis-je bon à tout réinstaller ?? Je crois que mon plus gros problème actuellement, c'est que je ne peux pas utiliser _cc_...


----------



## Membre supprimé 2 (27 Octobre 2001)

le .login et .tcshrc ne sont pas cree par defaut, il faut les editer sois meme.
.login est source chaque fois que tu ouvres un terminal
.tcshrc
.cshrc
etc...
sont source en fonction de ton shell
pour le connaitre:
echo $SHELL
pour le changer:
NetInfo Manager /Users/...
pour ton probleme de path, si tu veux tu peux vider la variable PATH au debut de ton .login, et le remplir proprement apres
setenv $PATH "" 
pour vider, ou un truc du genre
voila un petit exemple de morceau de .login

# Path standard dans mon home
setenv PATH "${PATH}:/home/wpaquier/bin:/home/wpaquier/opt/bin"
setenv LD_LIBRARY_PATH "/home/wpaquier/opt/lib"
setenv MANPATH "/home/wpaquier/opt/man"

# Pour ajouter des chemins... ceci place le nouveau chemin a la suite
setenv PATH "${PATH}:/home/tnemeth/bin"

# Pour ajouter des chemins... ceci place le nouveau chemin au debut
setenv PATH "home/tnemeth/bin:${PATH}"

l'ordre des chemins du PATH est important, si tu as deux versions d'un binaire, le premier trouve est execute, attention donc pour les problemes de versions

pour voir toutes tes varaiables d'environnement

printenv

tout ce qui est .login .tcshrc n'a rien a voir avec fink...
ou en tout cas ne devrais rien avoir avec.
J'ai pas installe fink parce que le no de version me fait un peu peur, et j'ai plus de partitions dediee au experiences en ce moment, va faloir que j'en refasse une ...

[26 octobre 2001 : message édité par William]


----------



## Membre supprimé 2 (27 Octobre 2001)

quand tu n'as pas de .login ou .tcshrc
le tcsh de MacOS X semble predefinir un ensemble de variables d'environement.

/users/einbert/bin/powerpc-apple-darwin

est une de ces variables.
!ca veut pas dire que le repertoire /users/einbert/bin/powerpc-apple-darwin existe, mais si il exitait, tu pourais lancer les binaires qui sont dedant sans donner le chemin.

A, oui, PATH ca sert a donner la liste des repertoires ou se trouve des binaires, pour ne pas avoir a donner le chemin a chaque fois.
De meme, LD_LIBRARY_PATH sert a donner les liste des repertoires ou se trouve les library dynamiques. (.dylib sous darwin, .so sous d'autrees unix, .dll sous windows, etc...)

Parfois certaines appli, seulement en ligne de commande refusent de se lancer par ce qu'elle ne trouvent pas leur .dylib

pour savoir quelle library ne sont pas trouve, tu dois utiliser la commande otool
(qui permet aussi de transformer du binaire en assembleur  
	

	
	
		
		

		
		
	


	




)

otool -L appli

ensuite tu cherches la lib sur ton disque, et tu ajoutes son chemin dnas LD_LIBRARY_PATH.

et donc, ca resout ton probleme de cc je crois ;-)


----------



## Einbert (28 Octobre 2001)

Merci pour tes précisions William, surtout en ce qui concerne otool  
	

	
	
		
		

		
		
	


	




 ! Concernant cc, j'avais aussi poster qqch sur le forum d'apple dans la section Unix et apparemment (d'après le gars qui m'a répondu), le problème serait dû que j'ai upgrader to 10.1, mais que j'ai encore les devtools 10.0 ! Ce problème aurait activement été débatu dans la section developper du forum apple...Pour ceux que ça intéresse (donc juste ce que m'a répondu le gars), c'est ici

Bon, j'essaie de réparer et je vous tiens au courant  
	

	
	
		
		

		
		
	


	




Encore merci  
	

	
	
		
		

		
		
	


	




Juste au passage, tu es étudiant en info ou un truc du style William ??


----------



## Einbert (28 Octobre 2001)

Merci pour ces infos William. Bon, en ce qui conerne le path, j'ai réussi à le remodifier, donc le voici :

/Users/einbert/bin/powerpc-apple-darwin /Users/einbert/bin /usr/local/bin /usr/bin /bin /usr/local/sbin /usr/sbin /sbin /sw/bin /sw/sbin /usr/X11R6/bin

Seul point mystérieux qui persistent c'est où est créé

/Users/einbert/bin/powerpc-apple-darwin   
	

	
	
		
		

		
		
	


	




Qu'est-ce qu'exactement
 LD_LIBRARY_PATH       ??

Mon problème de l'utilisation de cc n'est toujours pas résolu...Je vous rappelle donc l'erreur que j'obiens en tapant par exemple _cc salut.c_

*/usr/bin/ld: /usr/lib/libSystem.dylib load command 6 unknown cmd field*

 QQun pourrait-il m'aider ??

bon week-end à tous  
	

	
	
		
		

		
		
	


	




 et je ne vais pas me laisser pourrir le week-end à cause de ce petit incident


----------



## Membre supprimé 2 (28 Octobre 2001)

Apres avoir relu le post de Gwen,
on voit tres bien ou est ajouter

/users/einbert/bin/powerpc-apple-darwin

c'est simplement cette  partie du /usr/share/init/tcsh/login

if ($?version) then
  if ("$version" =~ tcsh*) then
    set path = ( "~/bin/${MACHTYPE}-${VENDOR}-${OSTYPE}" $path )
  endif
endif

pour le voir

echo ${MACHTYPE}-${VENDOR}-${OSTYPE}

pour le probleme de version, il fallait le dire tout de suite, c'etait effectivement connu.


----------



## Einbert (28 Octobre 2001)

Merci bien pour cette explication...Maintenant je sais enfin d'où vient ce _ apple-powerpc-darwin _





Bon, je dois alors installer les devtools 10.1...Quelques questions à ce sujet :

1) J'ai chercher un moment sur l'onglet developper d'apple, sans trouver aucun lien pour d/l ceux-ci...QQun pourrait-il me donner le link please ?  
	

	
	
		
		

		
		
	


	




2)J'ai donc les devtools 10.0 installer pour le moment...Pour installer les 10.1, faut-il faire qqch de spéciale ? Je ne sais pas moi, virer le dossier developer manuellement ainsi que 2 ou 3 autres trucs, ou bien (c'est l'option la plus probable à mon avis), ben l'installer va automatiquement virer ce qu'il faut, resp. faire automatiquement une MAJ dans les dossier concernés !  Alors c'est quoi le bon truc ??

++


----------



## Gwenhiver (28 Octobre 2001)

L'installeur travaillera tout seul. Le téléchargement s'effectue sur http://connect.apple.com  . (Inscription en tant que membre Online (gratuite) obligatoire.)


----------

