IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Code::Blocks Discussion :

Fichier non-reconnu sous Code::Blocks 8.02


Sujet :

Code::Blocks

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 90
    Points : 52
    Points
    52
    Par défaut Fichier non-reconnu sous Code::Blocks 8.02
    Que veut dire le message suivant en fin de compilation sous Code::Blocks 8.02

    -------------- Build: Release in Sud ---------------

    Compiling: SudFncSim.c
    Precompiling header: SudFncSim.h
    Compiling: main.cpp
    Linking executable: bin\Release\Sud
    SudFncAcc.h.gch\Release_SudFncAcc_h_gch: file not recognized: File format not recognized
    collect2: ld returned 1 exit status
    Process terminated with status 1 (0 minutes, 44 seconds)
    0 errors, 0 warnings

    Le fichier header SudFncAcc.h ne présente rien de particulier par rapport aux autres du projet...
    Ce projet comprend main plus 5 modules .C avec chacun un header .h

  2. #2
    r0d
    r0d est déconnecté
    Expert éminent

    Homme Profil pro
    tech lead c++ linux
    Inscrit en
    Août 2004
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : tech lead c++ linux

    Informations forums :
    Inscription : Août 2004
    Messages : 4 262
    Points : 6 680
    Points
    6 680
    Billets dans le blog
    2
    Par défaut
    Bizzare. Il a un problème pour linker. Qu'est-ce que c'est que ce fichier:
    Release_SudFncAcc_h_gch
    ?

    As-tu bien vérifié les options de compilation?
    « L'effort par lequel toute chose tend à persévérer dans son être n'est rien de plus que l'essence actuelle de cette chose. »
    Spinoza — Éthique III, Proposition VII

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 90
    Points : 52
    Points
    52
    Par défaut
    Effectivement, je ne vois pas du tout d'où provient ce fichier Release_SudFncAcc_h_gch qui se trouve dans le répertoire du projet à la suite du fichier d'en-tête SudFncAcc.h. A noter d'ailleurs que tous les fichiers d'en-tête ont chacun leur fichier xxx_h_gch. Si je les efface, je les retrouve systématiquement après une nouvelle compilation. Dans les options du projet en Project -> Proprietes -> Project settings -> Makefile je peut changer cet affichage en choisissant une des trois options offertes. Dans mon cas j'ai choisi l'option:
    Generate Pck alongside original header (default)
    A noter qu'en changeant cet option j'ai pratiquement le même message en fin de compilation.
    J'ai un autre projet qui lui aussi est modulaire avec des fichier en .c et en .h et je n'ai aucun problème. J'ai donc comparé les options de compilation et à priori, je ne vois aucune différence.
    J'utilise le compilateur GNU CCC et j'aimerais bien voir un exemple détaillé concernant ses options de compilation pour un projet modulaire. J'ai recherché sur le web mais jusqu'à présent je n'ai rien trouvè.
    Le projet est écrit en C, j'utilise SDL, SDL_image, SDL_ttf et FMOD, il comprend 1 main + 5 *.c + 5 *.h cumulant 17400 lignes pour les fichiers *.c et 580 lignes pour les fichiers *.h.

  4. #4
    Membre chevronné

    Homme Profil pro
    Appui fonctionnel senior
    Inscrit en
    Juin 2007
    Messages
    461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Appui fonctionnel senior
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 461
    Points : 2 211
    Points
    2 211
    Par défaut
    Ton problème est très simple et m'a beaucoup ennuyé au début aussi.

    Le problème de C::B est que, parfois, il tente des créer des headers précompilés (comme VC si je ne me trompe pas).

    Le problème réside dans le fait que GCC ne supporte pas les headers précompilés (à priori)

    Pour résoudre ton problème, tu fais :
    "Settings">>"Compiler and debugger">>"Other settings">>"Advanced settings"(là tu répond oui)
    Dans le dernier onglet, tu décoche la case "support PCH"

    Ensuite, tu fait le tour de tes options en décochant tout ce qui est en rapport avec PCH ou .gch

    Normalement, C::B ne devrait plus tenter de créer des headers précompilés, et tu ne devrait plus avoir de fichiers .gch

Discussions similaires

  1. fichier pdf non reconnu sous thunderbird
    Par vbcasimir dans le forum Thunderbird
    Réponses: 1
    Dernier message: 14/12/2007, 20h07
  2. [Débutant] Compiler glu.h sous Code::Blocks
    Par allanp8 dans le forum OpenGL
    Réponses: 10
    Dernier message: 18/11/2007, 00h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo