18 réponses
A noter aussi qu'en C++ on ne met pas d'extension aux headers de la lib std.
Donc ce n'est pas
#include <iostream.h>
mais
#include <iostream>
(ce qui était d'ailleur peut-etre l'origine du probleme...)
Donc ce n'est pas
#include <iostream.h>
mais
#include <iostream>
(ce qui était d'ailleur peut-etre l'origine du probleme...)
c'est pas les bib, c'est ton préprocesseur qui trouve pas les headers (.h)
n'aurais-tu pas une option pour dire à gcc où se trouvent les includes ? genre -I (in http://www.licence.info.upmc.fr/lmd/licence/2005/ue/LI205-2005oct/public/fiches-cini.pdf
parce qu'en fait, je connais pas grand chose à C ou C++ :)
parce qu'en fait, je connais pas grand chose à C ou C++ :)
damned ! la ')' est intégrée dans l'url :-(
l'url sans la ')' :
http://www.licence.info.upmc.fr/...
dsl de pas pouvoir t'aider plus
l'url sans la ')' :
http://www.licence.info.upmc.fr/...
dsl de pas pouvoir t'aider plus
Je viens d'installer "libstdc++", redémarrer le système: Aucun changements. =(
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Pour ce qui es de l'option de gcc pour lui dire où se trouve les includes, je cherche depuis tout à l'heure dans le 'man'...
Mais il y a tellement d'options pour gcc ...
Mais il y a tellement d'options pour gcc ...
En cherchant su le net, je vois un peu partout que iostream.h n'existe pas en standard on inclue "iostream" (sans le .h), en ajoutant un "namespace std".
Bref je ne pense pas que cela change quelques chose ....
Et je ne trouve pas le contenu de ces deux bibliothèques ....
Arf..
Bref je ne pense pas que cela change quelques chose ....
Et je ne trouve pas le contenu de ces deux bibliothèques ....
Arf..
bob031
Messages postés
8158
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
1 septembre 2014
472
2 déc. 2008 à 21:53
2 déc. 2008 à 21:53
salut,
tu peux donner le résultats des commandes suivantes :
tu peux donner le résultats des commandes suivantes :
gcc -v
find /usr/include/ -name "iostream.h"
find /usr/include/ -name "conio.h"
foxysama@fox-nr21s:~/Documents> gcc -v
Using built-in specs.
Target: i586-suse-linux
Configured with: ../configure --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --libexecdir=/usr/lib --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.3 --enable-ssp --disable-libssp --with-bugurl=https://en.opensuse.org/openSUSE:Submitting_bug_reports --with-pkgversion='SUSE Linux' --disable-libgcj --with-slibdir=/lib --with-system-zlib --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --program-suffix=-4.3 --enable-version-specific-runtime-libs --enable-linux-futex --without-system-libunwind --with-cpu=generic --build=i586-suse-linux
Thread model: posix
gcc version 4.3.1 20080507 (prerelease) [gcc-4_3-branch revision 135036] (SUSE Linux)
foxysama@fox-nr21s:~/Documents> find /usr/include/ -name "iostream.h"
foxysama@fox-nr21s:~/Documents> find /usr/include/ -name "conio.h"
foxysama@fox-nr21s:~/Documents>
Using built-in specs.
Target: i586-suse-linux
Configured with: ../configure --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --libexecdir=/usr/lib --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.3 --enable-ssp --disable-libssp --with-bugurl=https://en.opensuse.org/openSUSE:Submitting_bug_reports --with-pkgversion='SUSE Linux' --disable-libgcj --with-slibdir=/lib --with-system-zlib --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --program-suffix=-4.3 --enable-version-specific-runtime-libs --enable-linux-futex --without-system-libunwind --with-cpu=generic --build=i586-suse-linux
Thread model: posix
gcc version 4.3.1 20080507 (prerelease) [gcc-4_3-branch revision 135036] (SUSE Linux)
foxysama@fox-nr21s:~/Documents> find /usr/include/ -name "iostream.h"
foxysama@fox-nr21s:~/Documents> find /usr/include/ -name "conio.h"
foxysama@fox-nr21s:~/Documents>
bob031
Messages postés
8158
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
1 septembre 2014
472
>
Foxysama
2 déc. 2008 à 22:11
2 déc. 2008 à 22:11
[redfox@mandriva ~]$ find /usr/include/ -name "iostream.h"
/usr/include/c++/4.2.3/backward/iostream.h
[redfox@mandriva ~]$ gcc -v
Utilisation des specs internes.
Target: i586-manbo-linux-gnu
Configuré avec: ../configure --prefix=/usr --libexecdir=/usr/lib --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-checking=release --enable-languages=c,c++,ada,fortran,objc,obj-c++,java --host=i586-manbo-linux-gnu --with-cpu=generic --with-system-zlib --enable-threads=posix --enable-shared --enable-long-long --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --enable-java-awt=gtk --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --enable-gtk-cairo --disable-libjava-multilib --enable-ssp --disable-libssp
Modèle de thread: posix
version gcc 4.2.3 (4.2.3-6mnb1)
[redfox@mandriva ~]$
chez toi on peut lire : --with-gxx-include-dir=/usr/include/c++/4.3
quand à "conio.h" .....je ne l'ai pas !
/usr/include/c++/4.2.3/backward/iostream.h
[redfox@mandriva ~]$ gcc -v
Utilisation des specs internes.
Target: i586-manbo-linux-gnu
Configuré avec: ../configure --prefix=/usr --libexecdir=/usr/lib --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-checking=release --enable-languages=c,c++,ada,fortran,objc,obj-c++,java --host=i586-manbo-linux-gnu --with-cpu=generic --with-system-zlib --enable-threads=posix --enable-shared --enable-long-long --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --enable-java-awt=gtk --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --enable-gtk-cairo --disable-libjava-multilib --enable-ssp --disable-libssp
Modèle de thread: posix
version gcc 4.2.3 (4.2.3-6mnb1)
[redfox@mandriva ~]$
chez toi on peut lire : --with-gxx-include-dir=/usr/include/c++/4.3
quand à "conio.h" .....je ne l'ai pas !
...étrange ces fichiers qui n'existent pas.
j'étais persuadé avoir lu dans pas mal d'endroits que le C était portable.
Peut-être ne l'est-il pas partout ?
j'étais persuadé avoir lu dans pas mal d'endroits que le C était portable.
Peut-être ne l'est-il pas partout ?
rappel: je suis un gros nul en C et encore plus en C++
néanmoins, ce n'était pas la peine d'aller chercher midi à 14h : https://www.google.com/search?q=iostream.h&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a&gws_rd=ssl donne en 1er résultat http://www.commentcamarche.net/forum/affich 446579 iostream h pour le c :-)
je me permets quand même ce petit conseil : on ne peut pas se lancer dans la programmation sans connaître un minimum du processus de génération des exécutables. Parce que sinon, tu vas passer ta vie à chercher dans de mauvaises directions.
néanmoins, ce n'était pas la peine d'aller chercher midi à 14h : https://www.google.com/search?q=iostream.h&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a&gws_rd=ssl donne en 1er résultat http://www.commentcamarche.net/forum/affich 446579 iostream h pour le c :-)
je me permets quand même ce petit conseil : on ne peut pas se lancer dans la programmation sans connaître un minimum du processus de génération des exécutables. Parce que sinon, tu vas passer ta vie à chercher dans de mauvaises directions.
bob031
Messages postés
8158
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
1 septembre 2014
472
3 déc. 2008 à 18:32
3 déc. 2008 à 18:32
salut,
j'étais persuadé avoir lu dans pas mal d'endroits que le C était portable
s'il y a bien un langage qui est portable, c'est bien le C !
néanmoins, ce n'était pas la peine d'aller chercher midi à 14h .............
et quelle est l'explication alors ?
j'étais persuadé avoir lu dans pas mal d'endroits que le C était portable
s'il y a bien un langage qui est portable, c'est bien le C !
néanmoins, ce n'était pas la peine d'aller chercher midi à 14h .............
et quelle est l'explication alors ?
Merci pour vos réponses.
Mr othanga, sachez que cela fait deux ans que je fais des études dans l'informatique, et que je fais de petit programmes en C/C++ (Reproduire une balle rebondissante à l'infinie dans une console en 24*80, création d'un morpion, le célèbre jeu pong etc...). La programmation en C, j'en ai mangé ... Même si je ne me proclame pas expert, loin de là, sinon je n'en serais pas réduit à poser ce genre de questions, étant novice certaines choses m'échappent. Donc permettez moi de bien vouloir, dans l'ignorance, exposer mon problème ....
De plus, l'adresse que vous m'avez fournit n'a pas réellement une réponse à ma question ...
Bref.
Aujourd'hui j'ai donc exposé mon problème à ma formatrice en développement, nous avons pas mal planché dessus, mais sans vraiment de réponses ...
Le truc est que j'ai le même problème que je sois sous Mandriva (2008.1) ou OpenSUSE (11.0).
L'an dernier, j'utilisais le même OS qu' actuellement (la Suse dans une version antérieure) et je n'avais pas rencontré ce problème. (Pourtant, c'est bien moi qui avais installé le système sur cette station... si mes souvenirs sont bons.... et tout avait fonctionner sans le moindre soucis.)
Serait-ce un paquet de librairie passé à la trappe ? J'avoue être un peu dans l'ignorance total sur ce point là, j'ai toujours suivis -comme un étudiant bête et discipliné- la programmation et les devoirs demandé, sans jamais vraiment me poser la question de "Mais d'où ça vient le iostream.h? Ca sert à quoi?". Etc...
Merci,
Bonne soirée.
Mr othanga, sachez que cela fait deux ans que je fais des études dans l'informatique, et que je fais de petit programmes en C/C++ (Reproduire une balle rebondissante à l'infinie dans une console en 24*80, création d'un morpion, le célèbre jeu pong etc...). La programmation en C, j'en ai mangé ... Même si je ne me proclame pas expert, loin de là, sinon je n'en serais pas réduit à poser ce genre de questions, étant novice certaines choses m'échappent. Donc permettez moi de bien vouloir, dans l'ignorance, exposer mon problème ....
De plus, l'adresse que vous m'avez fournit n'a pas réellement une réponse à ma question ...
Bref.
Aujourd'hui j'ai donc exposé mon problème à ma formatrice en développement, nous avons pas mal planché dessus, mais sans vraiment de réponses ...
Le truc est que j'ai le même problème que je sois sous Mandriva (2008.1) ou OpenSUSE (11.0).
L'an dernier, j'utilisais le même OS qu' actuellement (la Suse dans une version antérieure) et je n'avais pas rencontré ce problème. (Pourtant, c'est bien moi qui avais installé le système sur cette station... si mes souvenirs sont bons.... et tout avait fonctionner sans le moindre soucis.)
Serait-ce un paquet de librairie passé à la trappe ? J'avoue être un peu dans l'ignorance total sur ce point là, j'ai toujours suivis -comme un étudiant bête et discipliné- la programmation et les devoirs demandé, sans jamais vraiment me poser la question de "Mais d'où ça vient le iostream.h? Ca sert à quoi?". Etc...
Merci,
Bonne soirée.
@bob031 : Merci de ta précieuse info !!
Voilà ce que contient mon "/usr/include/c++/4.3/backward" :
Pas de iostream.h ni de conio ou autre bibliothèque connu ...
Un problème docteur ?
Voilà ce que contient mon "/usr/include/c++/4.3/backward" :
foxysama@fox-nr21s:/usr/include/c++/4.3/backward> ls -l total 116 -rw-r--r-- 1 root root 9666 juin 6 20:43 auto_ptr.h -rw-r--r-- 1 root root 2665 juin 6 20:43 backward_warning.h -rw-r--r-- 1 root root 6942 juin 6 20:43 binders.h -rw-r--r-- 1 root root 4516 juin 6 20:43 hash_fun.h -rw-r--r-- 1 root root 17935 juin 6 20:43 hash_map -rw-r--r-- 1 root root 17355 juin 6 20:43 hash_set -rw-r--r-- 1 root root 32981 juin 6 20:43 hashtable.h -rw-r--r-- 1 root root 5769 juin 6 20:43 strstream foxysama@fox-nr21s:/usr/include/c++/4.3/backward>
Pas de iostream.h ni de conio ou autre bibliothèque connu ...
Un problème docteur ?
bob031
Messages postés
8158
Date d'inscription
samedi 7 août 2004
Statut
Membre
Dernière intervention
1 septembre 2014
472
3 déc. 2008 à 20:53
3 déc. 2008 à 20:53
1) il faut chercher avec la commande find pour savoir si le fichier iostream.h existe quelque part dans ton système. Si tu as des doute sur le fait que tu n'as pas eu de résultat dans le répertoire /usr/include, fait une recherche dans / . Tu peux tester ta commande find avec un ficheir qui existe, si tu as un retour, ta commande find est ok !
2) il faut savoir de quand date ton script que tu as probablement récuperé ! Tester un vieux script de 20 ans avec la dernière version gcc, c'est peut-être pas la meilleure chose !
3) apparemment il te manque des bibliothèques ....
2) il faut savoir de quand date ton script que tu as probablement récuperé ! Tester un vieux script de 20 ans avec la dernière version gcc, c'est peut-être pas la meilleure chose !
3) apparemment il te manque des bibliothèques ....
Yes, la commande find marche bel et bien !
Donc je n'ai bel et bien pas de fichiers iostream.h dans ce dossier.... ce qui reste problématique ...
Et le script n'est pas ancien, je l'ai écrit vite fait pour tester si il trouvait la(les) bibliothèques! (J'ai besoin de 'conio.h' pour pouvoir utiliser mon 'getch()', je crois...)
Merci en tout cas, c'est peut-être pour toi pas grand chose, mais au moins je sais que ces foutus bilibothèque ne sont pas par default sur les système que j'utilise. Thanks.
foxysama@fox-nr21s:/usr/include/c++/4.3/backward> find /usr/include/c++/4.3/backward /usr/include/c++/4.3/backward /usr/include/c++/4.3/backward/auto_ptr.h /usr/include/c++/4.3/backward/hashtable.h /usr/include/c++/4.3/backward/hash_map /usr/include/c++/4.3/backward/binders.h /usr/include/c++/4.3/backward/hash_fun.h /usr/include/c++/4.3/backward/strstream /usr/include/c++/4.3/backward/backward_warning.h /usr/include/c++/4.3/backward/hash_set
Donc je n'ai bel et bien pas de fichiers iostream.h dans ce dossier.... ce qui reste problématique ...
Et le script n'est pas ancien, je l'ai écrit vite fait pour tester si il trouvait la(les) bibliothèques! (J'ai besoin de 'conio.h' pour pouvoir utiliser mon 'getch()', je crois...)
Merci en tout cas, c'est peut-être pour toi pas grand chose, mais au moins je sais que ces foutus bilibothèque ne sont pas par default sur les système que j'utilise. Thanks.
Comment ajouter les bibliotheques manquantes?
Un paquet de bibliotheques peut être ?
Je ne vois pas cela sous YaST sous OpenSUSE ..
Un paquet de bibliotheques peut être ?
Je ne vois pas cela sous YaST sous OpenSUSE ..
razuki
Messages postés
242
Date d'inscription
lundi 17 décembre 2007
Statut
Membre
Dernière intervention
5 décembre 2012
1
15 mai 2009 à 17:58
15 mai 2009 à 17:58
Bonjour à tous,
Je débute avec C++. Je travaille sur ubuntu 8.10 et j'ai fait "built essential" permettant d'installer gcc, g++.
J'ai un problème à la compilation. Quand je compile mon prog echange_adr.cpp avec la commande :
g++ echange_adr.cpp -o echange_adr,
il m'affiche une erreur :
echange_adr.cpp: In function ‘int main()’:
echange_adr.cpp:16: erreur: ‘cout’ was not declared in this scope
Je me suis dit alors que peut être le compilateur c++ ne trouve pas l'endroit ou se trouve
<iostream> qui prend en charge cout.
J'ai fait la recherche manuellement pour localiser <iostream> :
find /usr/include/ -name "iostream"
et le résultat :
/usr/include/c++/4.3/iostream
J'ai recompilé avec l'option -I (puis avec -L) en faisant :
g++ echange_adr.cpp -o echange_adr -I /usr/include/c++/4.3/iostream mais pareil, toujours la meme erreur :
echange_adr.cpp: In function ‘int main()’:
echange_adr.cpp:15: erreur: ‘cout’ was not declared in this scope
echange_adr.cpp:16: erreur: ‘cin’ was not declared in this scope
La bibliothèque n'est elle donc pas installée sur le système alors qu'au début j'ai bien fait :
build essential
Si oui, je fais comment pour installer cette bibliothèque manquante ( iostream ) et surement, par la suite, il manque aussi d'autres bibliothèques de bases.
Foxysana, a tu identifier ton problème ? a tu trouvé une solution
merci d'avance
Je débute avec C++. Je travaille sur ubuntu 8.10 et j'ai fait "built essential" permettant d'installer gcc, g++.
J'ai un problème à la compilation. Quand je compile mon prog echange_adr.cpp avec la commande :
g++ echange_adr.cpp -o echange_adr,
il m'affiche une erreur :
echange_adr.cpp: In function ‘int main()’:
echange_adr.cpp:16: erreur: ‘cout’ was not declared in this scope
Je me suis dit alors que peut être le compilateur c++ ne trouve pas l'endroit ou se trouve
<iostream> qui prend en charge cout.
J'ai fait la recherche manuellement pour localiser <iostream> :
find /usr/include/ -name "iostream"
et le résultat :
/usr/include/c++/4.3/iostream
J'ai recompilé avec l'option -I (puis avec -L) en faisant :
g++ echange_adr.cpp -o echange_adr -I /usr/include/c++/4.3/iostream mais pareil, toujours la meme erreur :
echange_adr.cpp: In function ‘int main()’:
echange_adr.cpp:15: erreur: ‘cout’ was not declared in this scope
echange_adr.cpp:16: erreur: ‘cin’ was not declared in this scope
La bibliothèque n'est elle donc pas installée sur le système alors qu'au début j'ai bien fait :
build essential
Si oui, je fais comment pour installer cette bibliothèque manquante ( iostream ) et surement, par la suite, il manque aussi d'autres bibliothèques de bases.
Foxysana, a tu identifier ton problème ? a tu trouvé une solution
merci d'avance
Lorsque tu sauvegarde ton fichier, après avoir tapé le nom du fichier, pense à mettre ".cpp" derrière
the F
Messages postés
150
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
22 mars 2011
13
15 mai 2009 à 18:57
15 mai 2009 à 18:57
A tout les internautes : Pensez a utiliser code::blocks ,effcace et complet ?