Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 16/09/2008, à 21:21

Strab

Mauvais chemin de recherche de gcc

Bonjour,

Depuis que je suis passé à Hardy (il y a une semaine ou deux, depuis Gutsy), je n'arrive plus à compiler un programme qui ne posait pas problème auparavant.

Le premier message d'erreur affiché par la compilation est l'impossibilité de trouver stddef.h.
D'après mes recherches, il se trouve dans usr/lib/gcc/i486-linux-gnu/4.2.3/include.

Mais quand je demande à gcc d'afficher ses répertoires de recherche avec l'option -print-search-dirs, il me donne usr/lib/gcc/i486-linux-gnu/4.2.3/, il manque donc le morceau "include". Je n'ai cependant aucune idée d'où vient le problème ni de comment le résoudre.

J'ai essayé de réinstaller gcc-4.2, mais cela n'a eu aucun effet. Même résultat en réinstallant build-essentials.

gcc-4.1 est aussi installé, mais je ne sais pas comment changer proprement vers quelle version pointe gcc (suffit-il de changer le lien? update-alternatives ne semble pas connaitre gcc), donc je ne sais pas si j'aurais aussi le problème avec gcc-4.1.
Ceci dit, j'aimerais éviter de changer de version de gcc si possible, changer de compilateur est souvent la cause de perte de cheveux... :-)

Une solution ? Une idée ?

Merci de votre aide,
Strab


Si tu ne peux expliquer un concept à un enfant de 6 ans, c'est que tu ne le maitrises pas -- Albert Einstein

Hors ligne

#2 Le 17/09/2008, à 11:34

luckytoyn

Re : Mauvais chemin de recherche de gcc

salut

c'est peut etre tout simplement un pb de variable d'environnement non ?
Je n'utilise pas gcc mais des compilos fortran.
sinon tu peux peut etre utiliser
gcc -I/usr/lib/gcc/i486-linux-gnu/4.2.3/include
T'as essayé ça ?

luckytoyn


http://perso.ens-lyon.fr/antoine.rozel/

Hors ligne

#3 Le 17/09/2008, à 12:21

robrob

Re : Mauvais chemin de recherche de gcc

Pour connaître la version utilisé de gcc tu fais:
gcc --version

edit: Sinon pourquoi installer plusieurs versions de gcc?
(tu mentionnes 4.1 et 4.2)

Dernière modification par robrob (Le 17/09/2008, à 12:24)

Hors ligne

#4 Le 17/09/2008, à 20:23

Strab

Re : Mauvais chemin de recherche de gcc

Merci pour vos réponses !

@lucktoyn: C'est une solution, mais je ne devrais pas avoir à faire ça. Surtout que je ne pense pas que ce soit le seul répertoire à ajouter pour avoir accès à tous les headers standards.

@robrob: Je connais la version que j'utilise mais je ne sais pas la changer.
J'ai deux versions parce que parfois des programmes ne compilent qu'avec certaines versions de gcc. Dans mon cas je pourrais probablement me débarasser de gcc-4.1, mais ça ne résoud pas mon problème...


Si tu ne peux expliquer un concept à un enfant de 6 ans, c'est que tu ne le maitrises pas -- Albert Einstein

Hors ligne

#5 Le 19/09/2008, à 07:53

luckytoyn

Re : Mauvais chemin de recherche de gcc

Pour les cas où plusieurs versions du même compilateur cohabitent, il est parfois utile de créer des petits scripts qui définissent les variables d'environnement correctement. Ca permet de ne pas avoir à utiliser l'option -I en compilant et d'avoir à chercher sans arret les chemins vers les compilos.
A ta place, je chercherais cette variable d'environnement.

A plus et bon courage !


http://perso.ens-lyon.fr/antoine.rozel/

Hors ligne

#6 Le 20/09/2008, à 18:28

Strab

Re : Mauvais chemin de recherche de gcc

Je connais la variable dont tu parles, c'est CFLAGS. Je ne pense pas que ça soit le but de cette variable, ni que ce soit une solution de modifier cette variable pour accéder aux headers standards de base. Mais je me trompe peut-être.

J'ai quand même essayé, et le résultat n'est pas très convaincant. C'est maintenant un autre header qui n'est pas trouvé... Je pense que c'est vraiment un problème de configuration, je n'avais pas de problème avant de passer à Hardy.


Si tu ne peux expliquer un concept à un enfant de 6 ans, c'est que tu ne le maitrises pas -- Albert Einstein

Hors ligne