erreur compilation - C - Programmation
Marsh Posté le 16-09-2008 à 21:52:01
Tu essayes de le compiler en faisant quelle commande?
Tu passes par un Makefile?
Tu as un Include path bien configuré?
A+,
Marsh Posté le 17-09-2008 à 09:21:40
Généralement, stdio.h se trouve dans le répertoire /usr/include (c'est d'ailleurs dans cet endroit que tu as la plupart des includes de bibliothèques).
Cet include est livré avec un package de ta distribution de linux (debian, mandriva, ubuntu ,etc...). Tu peux le trouver dans le package libc6-dev. Vérifie qu'il est bien installé (apt-get install libc6-dev sur ubuntu/debian, urpmi libc6-dev pour mandriva, je ne connais pas les autres). Par contre effectivement, c'est étonnant qu'il ne soit pas présent alors que ton compilateur l'est, d'autant plus que les distributions récentes gèrent les dépendances de packages et que gcc doit certainement être dépendant de "stdio".
Marsh Posté le 17-09-2008 à 10:18:18
Une autre piste peut être (on ne sait jamais) tu as bien :
#include <stdio.h> |
et non pas :
#include "stdio.h" |
Marsh Posté le 17-09-2008 à 18:49:35
Merci de ces réponses même si elle reste un peu incompris de ma part;
Pour Tarabiscote, oui j'ai bien mis <stdio.h>
Pour xilebo, oui moi j'ai aussi pensé que stdio.h doit être inclus avec le compilateur, je chercherais plus en détail plus deman (manque de temps se soir)
Pour gilou je n'ai pas tout compris (mot trop technique! lol) si sa peut t'aider voici mon algo en C, je prend un algo de base pour eviter une erreur de syntaxe:
#include <stdio.h>
int main(void)
{
printf("hello!\n" );
return 0;
}
Marsh Posté le 17-09-2008 à 18:52:44
Lorsque je tape dans mon terminal ce que tu m'a indiqué xilebo voila ce qu'il me donne:
jeremy@jeremy-laptop:~$ apt-get install libc6-dev
E: Impossible d'ouvrir le fichier verrou /var/lib/dpkg/lock - open (13 Permission non accordée)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
Marsh Posté le 17-09-2008 à 19:20:36
Remarque vite fait: mieux vaut maitriser l'environnement ds lequel on apprend , sinon on est pas sorti de l'auberge ..
Tu devrais essayer de compiler ton fichier en le nommant XXX.c , puis gcc XXX.c
Marsh Posté le 17-09-2008 à 19:33:28
snakejb, tu n'as pas repondu a ma 1ere question:
Comment compiles tu ton programme?
Tu tapes une commande en ligne? tu utilises un environnement intégré avec un menu/bouton compile?
A+,
Marsh Posté le 18-09-2008 à 12:21:15
J'utilise gedit pour taper mon programme et ensuite je le compile avec gcc, je ne compile pas avec gedit.
Marsh Posté le 18-09-2008 à 12:27:43
c'est bon j'ai résolu mon problème, j'ai entré :"sudo apt-get install libc6-dev" dans mon terminal puis après quelques validations, l'installation des bibliothèques s'est effectué automatiquement. Merci pour toutes vos réponses et merci a Joel F qui à résolu mon problème. Maintenant a moi la programmation...
Marsh Posté le 16-09-2008 à 19:41:13
Bonjour,
J'aimerais programmé en C sous LINUX mais je rencontre un problème (qui vous paraîtras peut être évident mais que je n'arrive pas à résoudre). J'écris donc mon programme à l'aide de gedit puis lorsque j'essaye de le compiler, le terminal m'affiche ceci: "erreur: stdio.h : Aucun fichier ou dossier de ce type". J'aimerais donc savoir si vous avez la solution? Car stdio.h est la bibliothèque de base donc je pense qu'elle est déjà installé dans mon compilateur (si oui comment le savoir?). Si vous pensez pouvoir m'aider sa sera volontiers, je précise aussi que je ne suis pas (encore) un pro de l'informatique donc il se peut que l'erreur soit banal.
Merci.