Votre question

compiler sur linux

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
31 Octobre 2007 01:53:51

slt a tous !!

j'ai un probleme lorsque j'essaye de compiler mes programme sur ubuntu j'ai un message qui dit qu'il me manque le fichier stdio.h
je voudrais savoir comment resoudre ce probleme svp

merci pour vos reponses

Autres pages sur : compiler linux

31 Octobre 2007 02:05:39

salut,

sudo aptitude install build-essential

31 Octobre 2007 02:15:26

merci pour la reponse mais

avec cette commande j'aurai seulement la bibliotheque stdio.h
ou toutes les autres aussi(stdlib.h ,math.h etc...) ??

et j'ai aussi dans un dossier qui contient des librairies et des fichier .h que j'ai crée et je voudrais les utilisés dans mon programme comment faire pour les installer pour que la compilation les trouve ??
Contenus similaires
a c 232 L Programmation
31 Octobre 2007 10:39:16

build-essential, comme son nom l'indique t'apporte toutes les bibliothèques nécessaires à la compilation, donc tu auras toutes les autres aussi.

Si tu veux les utiliser dans ton programme, fallait les déclarer dans ton programme lors de la création. Si tu l'as fait, ça compilera avec. Si c'est dans le même répertoire ça devrait être bon.
31 Octobre 2007 16:47:16

au debut du programme j'ai mis les include pour mes fichier .h

et j'ai aussi mis le dossier qui contient les librairies et les fichier .h au meme endroit que le programme

mais le compilateur ne les trouve toujours pas :??: 
31 Octobre 2007 16:57:58

tu as un exemple?
31 Octobre 2007 17:06:55

par exemple

au debut du programme j'ai mis :
#include "fichier.h"

pour pouvoir utiliser les fonctions de fichier.h
ces meme fonction qui se trouve dans une librairie

et on a dire que fichier.h et les librairies se trouve dans un dossier qui se trouve dans le meme repertoire que le programme

et pourtant le compilateur ne les trouve pas
31 Octobre 2007 17:18:49

je parle pas d'exemple de ce genre, je parle d'un copie/coller de ce que te sors le compilateur avec de préference les lignes de commande que tu as lancé, exemple:

$ more essai.c fichier.h
::::::::::::::
essai.c
::::::::::::::
#include <stdio.h>
#include "fichier.h"

int main ()
{
test ();
return 0;
}

::::::::::::::
fichier.h
::::::::::::::
#include <stdio.h>

void test ()
{
printf ("test\n");
}

$ ls
essai.c fichier.h
$ gcc essai.c -o essai
$ ./essai
test
$
31 Octobre 2007 17:44:04

voila ce que fait le compilateur:


none@(none):~/Documents$ more test.c
#include <stdio.h>
#include "test.h"
int main(void){
int x=0;
printf("bonjour\n");
x=x+10;
printf("%d \n",x);
return 0;
}
none@(none):~/Documents$ gcc -o exe test.c
test.c:2:18: erreur: test.h : Aucun fichier ou répertoire de ce type



je precise que le fichier test.h existe car je peux l'ouvrir et voir ce qu'il contient
31 Octobre 2007 17:56:02

#include "test.h"

Doit être dans le même dossier que ton .c


Pour résumer,

#include <****.h> : Doit se trouver dans l'emplacement paramétré par le PATH (généralement, sous linux, /usr/include . C'est pour ca qu'ont voit souvent des include <sys/****.h>

#include "******.h" : Doit se trouver dans le même repertoire que ton .c, Autre solution: passer un chemin complet.
#include "/tmp/toto/header.h"



Allez , pour te montrer une source fiable de mecs qui codent avec les pieds:

http://msdn2.microsoft.com/en-us/library/36k2cdd4(VS.80).aspx
31 Octobre 2007 19:11:17

@dev826, t'as oublié le "ls"
t'as du sauver ton "test.h" dans un autre répertoire
31 Octobre 2007 21:29:06

en faite je pense qu'il faut que j'installe des paquets cr le compilateur me dit avant qu'il manque le packtage "gtk+-2.0" et aussi "gdk-2.0"
31 Octobre 2007 21:38:58

pourtant je pensais que nos posts étaient clairs...
une dernière fois, on sait jamais:
ton test.h n'est pas dans le bon répertoire!!

gtk et gdk sont des librairies pour le graphique, rien à voir avec ton programme.
31 Octobre 2007 21:41:43

oui mais justement j'ai plusieurs programme pour le premier programme j'ai resolu le probleme avec vos poste

mais j'ai un autre programme qui utilise des fonctions graphiques puisque c'est un jeu 2D ;) 
a b L Programmation
31 Octobre 2007 21:47:20

installe les packages "devel" des libs demandées.
31 Octobre 2007 21:54:38

et comment je fais pour les installer ?
31 Octobre 2007 22:21:54

en utilisant le gestionnaire de paquet
31 Octobre 2007 22:34:50

dans synaptic je trouve pas le package qui correspont au librairie demandé... :??: 

il y a pas un autre moyen de les avoir ?
1 Novembre 2007 14:25:03

il arrive meme pas à s'en sortir avec le gestionnaire de paquet, tu veux qu'il compile...

le paquet s'appelle libgtk2.0-dev et il fait partie du dépot par défaut, si tu le trouves pas, cherche mieux :) 
http://doc.ubuntu-fr.org/synaptic
1 Novembre 2007 15:04:58

pour plus de precision j'ai carrement fais une recherche dans synaptic avec l'outil recherche et j'ai trouvé seulment :

"libgtk2.0-0"
"libgtk2.0-bin"
"libgtk2.0-cil"
"libgtk2.0-common"

qui sont deja tous installé

mais pas de trace de "libgtk2.0-dev" coca25 :( 
1 Novembre 2007 15:18:48

je sais pas comment tu fais ton coup mais bref, tape dans un terminal:
sudo aptitude install libgtk2.0-dev
1 Novembre 2007 15:31:14

voici ce que sa donne :(  :


none@(none):~$ sudo aptitude install libgtk2.0-dev
[sudo] password for none:
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Lecture de l'information d'état étendu
Initialisation de l'état des paquets... Fait
Construction de la base de données des étiquettes... Fait
Pas de version candidate trouvée pour libgtk2.0-dev
Aucun paquet ne va être installé, mis à jour ou enlevé.
0 paquets mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de télécharger 0o d'archives. Après dépaquetage, 0o seront utilisés.
Écriture de l'information d'état étendu... Fait
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Lecture de l'information d'état étendu
Initialisation de l'état des paquets... Fait
Construction de la base de données des étiquettes... Fait

1 Novembre 2007 19:48:51

tu peux poster le contenu de ton fichier /etc/apt/sources.list ?
1 Novembre 2007 20:16:31

voici ce que tu m'as demandé coca25


deb cdrom:[Ubuntu 7.10 _Gutsy Gibbon_ - Release i386 (20071016)]/ gutsy main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.

# Line commented out by installer because it failed to verify:
#deb http://gp.archive.ubuntu.com/ubuntu/ gutsy main restricted
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy main restricted

## Major bug fix updates produced after the final release of the
## distribution.
# Line commented out by installer because it failed to verify:
#deb http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
# Line commented out by installer because it failed to verify:
#deb http://gp.archive.ubuntu.com/ubuntu/ gutsy universe
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy universe
# Line commented out by installer because it failed to verify:
#deb http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates universe
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
# Line commented out by installer because it failed to verify:
#deb http://gp.archive.ubuntu.com/ubuntu/ gutsy multiverse
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy multiverse
# Line commented out by installer because it failed to verify:
#deb http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb http://gp.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse
# deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository. This software is not part of Ubuntu, but is
## offered by Canonical and the respective vendors as a service to Ubuntu
## users.
# deb http://archive.canonical.com/ubuntu gutsy partner
# deb-src http://archive.canonical.com/ubuntu gutsy partner

# Line commented out by installer because it failed to verify:
#deb http://security.ubuntu.com/ubuntu gutsy-security main restricted
# Line commented out by installer because it failed to verify:
#deb-src http://security.ubuntu.com/ubuntu gutsy-security main restricted
# Line commented out by installer because it failed to verify:
#deb http://security.ubuntu.com/ubuntu gutsy-security universe
# Line commented out by installer because it failed to verify:
#deb-src http://security.ubuntu.com/ubuntu gutsy-security universe
# Line commented out by installer because it failed to verify:
#deb http://security.ubuntu.com/ubuntu gutsy-security multiverse
# Line commented out by installer because it failed to verify:
#deb-src http://security.ubuntu.com/ubuntu gutsy-security multiverse
1 Novembre 2007 20:24:19

c'est normal que tu trouves rien :p 
le seul endroit où il cherche est le cdrom!
il faut que ton sources.list ressemble à ca: (les # sont enlevés de certaines lignes):

#deb cdrom:[Ubuntu 7.10 _Gutsy Gibbon_ - Release i386 (20071016)]/ gutsy main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.

# Line commented out by installer because it failed to verify:
deb http://gp.archive.ubuntu.com/ubuntu/ gutsy main restricted
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy main restricted

## Major bug fix updates produced after the final release of the
## distribution.
# Line commented out by installer because it failed to verify:
deb http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
# Line commented out by installer because it failed to verify:
deb http://gp.archive.ubuntu.com/ubuntu/ gutsy universe
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy universe
# Line commented out by installer because it failed to verify:
deb http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates universe
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
# Line commented out by installer because it failed to verify:
deb http://gp.archive.ubuntu.com/ubuntu/ gutsy multiverse
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy multiverse
# Line commented out by installer because it failed to verify:
deb http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse
# Line commented out by installer because it failed to verify:
#deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy-updates multiverse

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb http://gp.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse
# deb-src http://gp.archive.ubuntu.com/ubuntu/ gutsy-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository. This software is not part of Ubuntu, but is
## offered by Canonical and the respective vendors as a service to Ubuntu
## users.
# deb http://archive.canonical.com/ubuntu gutsy partner
# deb-src http://archive.canonical.com/ubuntu gutsy partner

# Line commented out by installer because it failed to verify:
deb http://security.ubuntu.com/ubuntu gutsy-security main restricted
# Line commented out by installer because it failed to verify:
#deb-src http://security.ubuntu.com/ubuntu gutsy-security main restricted
# Line commented out by installer because it failed to verify:
deb http://security.ubuntu.com/ubuntu gutsy-security universe
# Line commented out by installer because it failed to verify:
#deb-src http://security.ubuntu.com/ubuntu gutsy-security universe
# Line commented out by installer because it failed to verify:
deb http://security.ubuntu.com/ubuntu gutsy-security multiverse
# Line commented out by installer because it failed to verify:
#deb-src http://security.ubuntu.com/ubuntu gutsy-security multiverse


par contre si tu n'es pas connécté, il te faudra télecharger les paquets depuis un autre poste, mais il y en a tellement...

si tu es connécté, après avoir modifier le fichier:

sudo aptitude update && sudo aptitude upgrade
sudo aptitude install libgtk2.0-dev
1 Novembre 2007 20:39:52

donc si j'ai bien compris je copie le sources.list que tu m'a donné et je le met a la place de mon sources.list c'est bien ça ?

comme j'arrive pas a trouver le pilote de mon modem usb pour linux j'ai pas internet dessus donc si tu pouvais m'indiquer ou telecharger tous les paquets et ensuite comment les installer ce serait sympas
1 Novembre 2007 21:46:56

a c'est bon j'ai reussi a installer mon modem grace a un tres bon tuto sur le site de ubuntu :) 
donc maintenant j'ai acces a internet depuis ubuntu

mais par contre je n'arrive pas a modifier mon sources.list il me dit que je n'ai pas les droits
2 Novembre 2007 00:52:14

il faut etre root:
sudo gedit /etc/apt/sources.list
2 Novembre 2007 01:32:36

merci beaucoup pour ton aide maintenant mon programme marche parfaitement :) 

mais j'ai un dernier petit probleme qui n'a rien a voir en faite lorsque j'appuis sur la touche majuscule elle fonctionne mais sa m'affiche ce message d'erreur a chaque fois et c'est assez ennervant:

"An error occurred while loading or saving configuration information for gnome-settings-daemon. Some of your configuration settings may not work properly."

tu saurais pas aussi comment faire pour ne plus aVoir ce message stp ?
2 Novembre 2007 03:10:22

quand cette fenetre apparait, tu a un lien détails, il faut cliquer dessus, et tu postes ce qu'il contient
2 Novembre 2007 03:39:24

voici ce que donne le lien detail:

Nom de clé ou de répertoire incorrect: « /desktop/gnome/peripherals/keyboard/host-(none)/0/numlock_on » : « ( » est un caractère non valide dans un nom de clé/répertoire
2 Novembre 2007 04:04:42

tu n'as pas du indiquer le nom de ta machine à l'install:

cd ~/.gconf/desktop/gnome/peripherals/keyboard
sudo hostname un_nom_pour_ta_machine
gconftool-2 --shutdown
mv host-\(none\) host-$(hostname)
gconftool-2 --spawn

ca devrait arranger le problème (y a surement moins compliqué, mais bon)
2 Novembre 2007 04:57:30

merci ça ressout plus ou moins mon probleme car je n'ai plus le message d'erreur mais par contre je peux plus avoir de terminale

pour pouvoir utiliser le terminale je dois redemarrer mais quand je redemarre le message d'erreur revient quand j'appuie sur la touche maj :pt1cable: 
2 Novembre 2007 14:12:31

gnome doit utiliser le nom d'hote pour fonctionner, tu devrais essayer sans etre logué dans ta session graphique, avec ctrl+alt+f1 avant de te rentrer dans ta session
2 Novembre 2007 15:08:36

en faite quand je met

mv host-\(none\) host-$(hostname)

ça me dit que le repertoire none n'existe pas
2 Novembre 2007 15:13:50

c'est bon j'ai reussi a resoudre le probleme et plus de message d'erreur quand j'appuie sur la touche maj

en faite dans mon nom d'hote j'avais mis "-----" je pense qu'il fallait metre un nom avec des lettres pour que sa marche

merci encore pour ton aide coca25
2 Novembre 2007 15:17:02

de rien :jap: 
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS