Cannot open Include file: erreur basique mais pb

Cannot open Include file: erreur basique mais pb - C++ - Programmation

Marsh Posté le 29-07-2005 à 10:01:20    

Bonjour,
 
Je m'excuse de poster pour cette question aussi basique mais là je ne vois pas
Lors de ma compilation, j'ai une erreur

Code :
  1. \.\.\validationcom\excelbase\varianttypes.h(7) : fatal error C1083: Cannot open include file: './Base/array2d.h': No such file or directory


Alors que mon array2d.h est bien ds le chemin spécifié
 
Merci d'vanace.
 
Morgan

Reply

Marsh Posté le 29-07-2005 à 10:01:20   

Reply

Marsh Posté le 29-07-2005 à 10:04:03    

C'est du Visual?
 
C'est surement un problème de chemin par défaut. Le . est le chemin par défaut, sous Visual il s'agit du répertoire dans le quel se trouve le .dsw (ou .dsp je ne sais plus exactement)
 
Il faut peut être rajouter des "include directories"

Reply

Marsh Posté le 29-07-2005 à 10:08:00    

Ou se trouve array2d.h ? Dans \.\.\validationcom\excelbase\Base\ ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 29-07-2005 à 10:13:23    

Non array2 est dans
validationcom\Sources\toto\base\array2d.h

Reply

Marsh Posté le 29-07-2005 à 10:16:19    

Et validationcom\Sources\toto\base est dans tes "include directories"?
Au fait tu n'as pas répondu à la question, c'est quel IDE?

Reply

Marsh Posté le 29-07-2005 à 10:29:24    

c'est du visual!
 
Ou doit-on spécifier les include directories?

Reply

Marsh Posté le 29-07-2005 à 10:44:18    

En supposant que c'est du VC++ 6.0:
Menu Project/Settings. Onglet C/C++, sélectionne Category: "Preprocessor". Saisi le chemin en relatif ou en absolu dans la case "Additional Include Directories". Ce qui est chiant avec Visual, c'est que tu ne peux pas vérifier la validité du répertoire. Note bien qu'en relatif, la racine (le .) correspond au dossier où est le fichier .dsp de ton projet.


Message édité par slash33 le 29-07-2005 à 10:46:06
Reply

Marsh Posté le 29-07-2005 à 10:49:38    

merci pour le coup de main
It's ok now
 

Reply

Marsh Posté le 29-07-2005 à 10:50:36    

Y'a pas de quoi et bon codage.
 
Ah au fait, la prochaine fois essaye d'ajouter une balise au début du titre de ton message. Par exemple ici [VC++6]. Ca permet de mieux cibler ta demande et d'obtenir le bon auditoire.


Message édité par slash33 le 29-07-2005 à 10:52:36
Reply

Marsh Posté le 29-07-2005 à 12:03:39    

Tant qu'on y est dans les erreurs de base VISUAL
 
J'ai cette erreur.
 
:\morgan\c++\validationcomobject\src\com\totovalidationcom\excelbase\excelcommand.cpp(189) fatal error C1010: unexpected end of file while looking for precompiled header directive
(14 fois)
Quelqu'un a une idée?
 
Merci.
 
Morganito
 
Morgan

Reply

Marsh Posté le 29-07-2005 à 12:03:39   

Reply

Marsh Posté le 29-07-2005 à 14:00:15    

manquerait pas #include "stdafx.h" au début du .cpp par hasard?

Reply

Marsh Posté le 29-07-2005 à 14:19:07    

Non je crois pas:
En fait j'ai rajouté dans mon projet 4 répertoires:
base
math
excel func
excel base
avec dans chaque réperoire .h et .cpp
el im sort l'erreur c1010
pour chaque .cpp présents dans les répertoires ci-dessus
peut etre tjs pb de chemiN?

Reply

Marsh Posté le 29-07-2005 à 14:44:22    

essaie de virer les precompiled header
dans project settings, apres je sais plus ou c'est dans  
visual 6!
t'as une option not using precompiled header

Reply

Marsh Posté le 29-07-2005 à 14:45:57    

non, ton projet est configuré pour utiliser des en-tête précompilées. Soit tu désactives cette options, soit -si tu les utilises- tu ajoutes le header qui va bien au début, à priori stdafx.h comme te l'a soufflé slash33.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 29-07-2005 à 14:53:38    

Il y a une autre possibilité (ça m'est arrivé c'est pour ça que je le dit): tu as oublié un ; à la fin de la déclaration d'une classe. Il ne faut pas oublier que les fichiers sont traités à la queue leu leu, si tu as un problème dans un .h ça peut se traduire par un C1010.
 
Pour rappel:

Code :
  1. class maClasse { ... };

Reply

Marsh Posté le 29-07-2005 à 15:11:59    

non en fait il me manquait un librairie  
que j'appelai dans mes .cpp
 
merci pour tout
 
mais je pense j'ai une autre question  
mais nouveau sujet
 

Reply

Marsh Posté le 29-07-2005 à 15:17:31    

Parce qu'il te manque une librairie tu as une erreur C1010. C'est la première fois que j'entend ça. Bonjour la pertinence des messages d'erreur de visual  :sweat:

Reply

Marsh Posté le 29-07-2005 à 15:21:26    

je pense que c çà!
 
Le fait de faire un #include d'un.h qui n'existe pas dans mon workspace entraine l'erreur C1010 apparemment

Reply

Marsh Posté le 29-07-2005 à 15:36:39    

Bizard chez moi ça se traduit par une erreur du type: fichier xxx.h introuvable. Au fait essaie de ne pas confondre bibliothèque et fichier d'en-tête, ce n'est pas vraiment la même chose.


Message édité par slash33 le 29-07-2005 à 15:37:34
Reply

Marsh Posté le 29-07-2005 à 15:44:17    

ouai je crois que t'as raison !!!
je confonds je pense
 
 
car j'ai mon erreur c1010 qui vient de réapparaitre

Reply

Marsh Posté le 29-07-2005 à 15:51:09    

Vérifie un à un les options "Précompiled headers" de tes fichiers. Ca se passe dans les Settings du projet, tu peux dérouler la liste des fichiers du projet puis les sélectionner un à un. En toute logique tu devrais avoir stdafx.cpp -> "Créer un entête précompilé au travers de stdafx.h" (traduction approx.) et les autres -> Utiliser l'entête précompilé au travers de stdafx.h. Enfin c'est de l'approximatif tout ça. Et n'hésite pas à faire un rebuild all, y a des choses étranges avec Visual.

Reply

Marsh Posté le 29-07-2005 à 15:56:43    

c bon j'ai vérifié ce que tu m'as dit
tout est comme indiqué
et j'ai rebuildé mais rien n'y fait

Reply

Marsh Posté le 29-07-2005 à 16:00:12    

:o  

Citation :


Bonjour,  
 
Je m'excuse de poster pour cette question aussi basique mais là je ne vois pas  
Lors de ma compilation, j'ai une erreur  
Code :
 
\.\.\validationcom\excelbase\varianttypes.h(7) : fatal error C1083: Cannot open include file: './Base/array2d.h': No such file or directory
 
 
Alors que mon array2d.h est bien ds le chemin spécifié  
 
Merci d'vanace.  
 
Morgan


 
1- y'a t il un probleme si tu essaie de copier / coller ton fichier  
 
header dans le dossier contient workspace  :) .
 
2- assure toi des librairies utilisés :) .
 
3- essaie de bien configurer ton compilo
 
 


---------------
n'editez pas !!!  
Reply

Marsh Posté le 29-07-2005 à 16:07:18    

Tu as un train de retard.
 
Tu peux pas relire la file avant de répondre a quelque chose qui est déja résolu?

Reply

Marsh Posté le 29-07-2005 à 16:10:06    

merci Slash de ta persévérance
 
Tjs rien

Reply

Marsh Posté le 29-07-2005 à 16:10:58    

J'ai regardé ce que dit la MSDN à propos de C1010.
 
Aussi j'ai une question: est-ce que stdafx.cpp est présent dans le dossier "Source Files" de l'onglet FileView de la fenêtre Workspace?

Reply

Marsh Posté le 29-07-2005 à 16:14:04    

oui
en fait j'ai enlevé les répertoires sources//header...
mais le stdafx est présent dans mon projet

Reply

Marsh Posté le 29-07-2005 à 16:18:16    

Je viens de voir quelque chose:
\morgan\c++\validationcomobject\src\com\totovalidationcom\excelbase\excelcommand.cpp(189)
Il y a quoi ligne 189, c'est pas la fin du fichier par hazard?
 
Tous les symptômes tendent à dire que tu n'inclue pas stdafx.h dans excelcommand.cpp. Tu es vraiment sur que le fichier excelcommand.cpp commence bien par

Code :
  1. #include "stdafx.h"

?

Reply

Marsh Posté le 29-07-2005 à 16:19:18    

morgan541 a écrit :

oui
en fait j'ai enlevé les répertoires sources//header...
mais le stdafx est présent dans mon projet


Ce ne sont pas des répertoires. Et c'est pas forcément une bonne idée de les enlever à moins d'en mettre d'autres pour structurer le projet.

Reply

Marsh Posté le 29-07-2005 à 16:21:52    

en fait j'ai enlevé les répertoires ExcelCommand, excel base et il ne me reste plus que le dossier Maths
 
Alors news: (l'équipe de recherche de l'entreprise où je suis a développé projet similaire)
et not using precompiled headres est coché
 
docn j'ai coché et là il me met l'erreur
d:\morgan\c++\comvalidation\sources\toto\maths\polynomialsolver.hpp(6) : fatal error C1083: Cannot open include file: 'ql/Base/vector.h': No such file or directory
studentldistribution.cpp

Reply

Marsh Posté le 29-07-2005 à 16:22:12    

Oui c'est pour structurer!!

Reply

Marsh Posté le 29-07-2005 à 16:25:41    

Ca sent encore le "include directory" manquant. Allez faut trouver le bon répertoire et l'ajouter dans les settings.
 
Par contre avec un nom 'vector.h' j'espère qu'il n'y a pas de classe 'vector' sinon tu vas peut-être devoir jongler avec namespace std (si tu utilises la STL)

Reply

Marsh Posté le 29-07-2005 à 16:36:58    

Je suis désolé Slash mais le Project Settings je n'ai pas
encore la grandre maitrise
donc pourrais-tu détailler ton include directory ?
 
merci

Reply

Marsh Posté le 29-07-2005 à 16:38:42    

Bon je me quote c'est plus simple:

slash33 a écrit :

En supposant que c'est du VC++ 6.0:
Menu Project/Settings. Onglet C/C++, sélectionne Category: "Preprocessor". Saisi le chemin en relatif ou en absolu dans la case "Additional Include Directories". Ce qui est chiant avec Visual, c'est que tu ne peux pas vérifier la validité du répertoire. Note bien qu'en relatif, la racine (le .) correspond au dossier où est le fichier .dsp de ton projet.

Reply

Marsh Posté le 29-07-2005 à 17:23:26    

est ce que include directory est la emmechose que d'aller dans tools/Options/Directories
car j'ai du mal avec les.\..\..

Reply

Marsh Posté le 29-07-2005 à 17:24:49    

Ah non c'est pas la même chose. Par contre l'effet doit être le même sauf qu'au lieu de définir des options pour le projet, tu les défini pour tous les projets Visual. Je serais toi j'éviterai.

Reply

Marsh Posté le 29-07-2005 à 17:25:53    

Toi aussi tu les trouves pratiques les champs de saisie de Visual (ironie)

Reply

Marsh Posté le 29-07-2005 à 17:27:06    

clair
:-)

Reply

Marsh Posté le 29-07-2005 à 17:29:55    

bon j'ai tjs mes C1083!!
reprenons depuis le début
dans mon additionnal include directories, je dois mettre répertoire ds lequel il y a mes .n'est ce pas?
\..\..\
que veulent dire les 2 points entre les anti slashs?

Reply

Marsh Posté le 29-07-2005 à 17:31:33    

.. veut dire remonter au répertoire de niveau supérieur. Tu n'as jamais utilisé de console en ligne de commande toi?

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed