wxDev.fr, le portail francophone consacré à wxWidgets ! ( The french portal for wxWidgets )  
Esp. membre
Recheche rapide



Recherche avancée
Statistiques
Membres inscrits :2359

Membres en ligne : 0
Invités en ligne : 1

Valid XHTML 1.0 Transitional

Valid CSS2

Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Utilisation générale wxWidgets
» Fatal error avec des Headers
Conversation (Résolue) : Fatal error avec des Headers
22-12-2012 15:57:21  Fatal error avec des Headers #1
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
Bonjour

Depuis peu de temps j'ai installé wxWidgets-2.8.12.
Cela fonctionne bien sauf pour trois onglets qui m'apportent des erreur de ce type pour chaque ajout dans mon ihm d'un des composants :

Code Cpp:

fatal error: wx/chartctrl.h: No such file or directory


Les onglets concernés sont les suivants :
-Contrib
-KWIC
-Led

Donc si quelqu'un sais d'où peuvent venir les erreurs concernant seulement ces trois onglets, merci de m'aider.

Merci d'avance !
22-12-2012 16:20:49  Re: Fatal error avec des Headers #2
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Salut.
C'est bizarre.
C'est toi qui as mis ce header dans tes fichiers ?

Je viens de me souvenir que d'après ton topic précédent, tu utilises wxSmith.
Peux-tu regarder dans tes fichiers sources où apparaît cet include, et poster le code correspondant ici.

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
22-12-2012 16:32:39  Re: Fatal error avec des Headers #3
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
Je n'ai pas ajouter ce header , Code::Blocks l'a fait tout seul lorsque j'ai ajouter l'objet dans mon ihm.

L'include apparait dans mon main.h
Voici le code associé (j'espère que c'est ce que tu me demandais^^) :

Code Cpp:

#ifndef ESSAIMAIN_H
#define ESSAIMAIN_H
 
//(*Headers(essaiFrame)
#include <wx/chartctrl.h>
#include <wx/menu.h>
#include <wx/frame.h>
#include <wx/statusbr.h>
//*)
23-12-2012 10:57:26  Re: Fatal error avec des Headers #4
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Salut.

En fait, il faudrait un peu plus de code (surtout, la partie correspondant à la création des contrôles).
Ou alors, un descriptif de ce que tu as inséré comme contrôles sur ta wxFrame.

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
23-12-2012 14:19:37  Re: Fatal error avec des Headers #5
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
Je créé un projet wxWidgets et j'ajoute par exemple dans l'onglet Contrib un wxChartCtrl. Donc je ne touche a rien j'ai juste le code générer automatiquement par Code::Blocks de base plus un wxChartCtrl. Je ne sais pas si c'est très clair :s.

Je te donne le code de mon essaiMain.cpp et essaiMain.h si cela peut aider à trouver ma solution.

Code Cpp:

#include "essaiMain.h"
#include <wx/msgdlg.h>
 
//(*InternalHeaders(essaiFrame)
#include <wx/pie3dchartpoints.h>
#include <wx/barchartpoints.h>
#include <wx/intl.h>
#include <wx/bar3dchartpoints.h>
#include <wx/piechartpoints.h>
#include <wx/string.h>
//*)
 
//helper functions
enum wxbuildinfoformat {
    short_f, long_f };
 
wxString wxbuildinfo(wxbuildinfoformat format)
{
    wxString wxbuild(wxVERSION_STRING);
 
    if (format == long_f )
    {
#if defined(__WXMSW__)
        wxbuild << _T("-Windows");
#elif defined(__UNIX__)
        wxbuild << _T("-Linux");
#endif
 
#if wxUSE_UNICODE
        wxbuild << _T("-Unicode build");
#else
        wxbuild << _T("-ANSI build");
#endif // wxUSE_UNICODE
    }
 
    return wxbuild;
}
 
//(*IdInit(essaiFrame)
const long essaiFrame::ID_CHART1 = wxNewId();
const long essaiFrame::idMenuQuit = wxNewId();
const long essaiFrame::idMenuAbout = wxNewId();
const long essaiFrame::ID_STATUSBAR1 = wxNewId();
//*)
 
BEGIN_EVENT_TABLE(essaiFrame,wxFrame)
    //(*EventTable(essaiFrame)
    //*)
END_EVENT_TABLE()
 
essaiFrame::essaiFrame(wxWindow* parent,wxWindowID id)
{
    //(*Initialize(essaiFrame)
    wxMenuItem* MenuItem2;
    wxMenuItem* MenuItem1;
    wxMenu* Menu1;
    wxMenuBar* MenuBar1;
    wxMenu* Menu2;
 
    Create(parent, id, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_STYLE, _T("id"));
    Chart1 = new wxChartCtrl(this,ID_CHART1,(wxChartStyle)(DEFAULT_STYLE),wxPoint(136,184),wxDefaultSize,wxSIMPLE_BORDER);
    {
    }
    MenuBar1 = new wxMenuBar();
    Menu1 = new wxMenu();
    MenuItem1 = new wxMenuItem(Menu1, idMenuQuit, _("Quit\tAlt-F4"), _("Quit the application"), wxITEM_NORMAL);
    Menu1->Append(MenuItem1);
    MenuBar1->Append(Menu1, _("&File"));
    Menu2 = new wxMenu();
    MenuItem2 = new wxMenuItem(Menu2, idMenuAbout, _("About\tF1"), _("Show info about this application"), wxITEM_NORMAL);
    Menu2->Append(MenuItem2);
    MenuBar1->Append(Menu2, _("Help"));
    SetMenuBar(MenuBar1);
    StatusBar1 = new wxStatusBar(this, ID_STATUSBAR1, 0, _T("ID_STATUSBAR1"));
    int __wxStatusBarWidths_1[1] = { -1 };
    int __wxStatusBarStyles_1[1] = { wxSB_NORMAL };
    StatusBar1->SetFieldsCount(1,__wxStatusBarWidths_1);
    StatusBar1->SetStatusStyles(1,__wxStatusBarStyles_1);
    SetStatusBar(StatusBar1);
 
    Connect(idMenuQuit,wxEVT_COMMAND_MENU_SELECTED,(wxObjectEventFunction)&essaiFrame::OnQuit);
    Connect(idMenuAbout,wxEVT_COMMAND_MENU_SELECTED,(wxObjectEventFunction)&essaiFrame::OnAbout);
    //*)
}
 


Code Cpp:

#ifndef ESSAIMAIN_H
#define ESSAIMAIN_H
 
//(*Headers(essaiFrame)
#include <wx/chartctrl.h>
#include <wx/menu.h>
#include <wx/frame.h>
#include <wx/statusbr.h>
//*)
 
class essaiFrame: public wxFrame
{
    public:
 
        essaiFrame(wxWindow* parent,wxWindowID id = -1);
        virtual ~essaiFrame();
 
    private:
 
        //(*Handlers(essaiFrame)
        void OnQuit(wxCommandEvent& event);
        void OnAbout(wxCommandEvent& event);
        //*)
 
        //(*Identifiers(essaiFrame)
        static const long ID_CHART1;
        static const long idMenuQuit;
        static const long idMenuAbout;
        static const long ID_STATUSBAR1;
        //*)
 
        //(*Declarations(essaiFrame)
        wxStatusBar* StatusBar1;
        wxChartCtrl* Chart1;
        //*)
chartctrl
        DECLARE_EVENT_TABLE()
};
 
#endif // ESSAIMAIN_H
 

----------
Apparament cela ne viendrai pas de wxWidgets car j'ai essayer de faire un projet en console et code::blocks me marque l'erreur : No such file or directory pour beaucoup de headers (ici j'ai essayer #include <network.h>). Donc cela deviens très embêtant. J'ésite a tout réinstaller ... Mon Code::Blocks ainsi que mon wxWidgets une fois que le CodeBlocks aura été testé.

Qu'en penses-tu ?

Dernière modification par Babolow (23-12-2012 14:59:23)

23-12-2012 20:37:20  Re: Fatal error avec des Headers #6
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Je ne pense pas que tout réinstaller soit la solution miracle.
Normalement, gcc sait où trouver ses propres headers.
Mais il n'y a effectivement pas de "<network.h>" dans les headers standards.

En fait, le problème vient de wxChartCtrl.
Ce contrôle ne fait pas partie de la distribution de base wxWidgets.
Il s'agit en fait d'un composant additionnel à compiler toi-même.

Tu trouveras les sources ici : http:/wxcode.sourceforge.net/components/wxchart

Le plus simple pour le compiler est de le faire en ligne de commande.
Tu télécharges l'archive des sources et tu la décompresses quelque-part.
Ensuite, tu ouvres une fenêtre de commandes, et tu te places dans le sous-dossier "build" de celui obtenu lors de la décompression ci-dessus
Et tu entres la ligne de commande suivante :

Code:

mingw32-make -f makefile.gcc WX_SHARED=1 WX_UNICODE=1 WX_DEBUG=0 WX_VERSION=28 WX_MONOLITHIC=0

Il faut bien entendu adapter les valeurs à ton installation.

Tu pourras ensuite intégrer ce composant à ton installation wxWidgets en procédant de la façon suivante :
- Copier WXCHART_SOURCES\include\wx dans WXWIN\contrib\include\wx\chartctrl  (ce dossier sera à créer car il n'existe pas)
- Copier le contenu de WXCHART_SOURCES\lib dans WXWIN\contrib\lib
- Déplacer les éventuelles dll qui auraient été copiées par la commande précédente pour les placer dans WXWIN\bin
Et enfin, ajouter le dossier "WXWIN\contrib\include\wx\charctrl" aux dossiers de recherche du compilateur, et "WXWIN\contrib\lib" à ceux du linker.

Normalement, avec ça, ça devrait  marcher.
Si tu as besoin d'un coup de main supplémentaire, n'hésites pas.

Bonne chance, et @+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
24-12-2012 13:36:56  Re: Fatal error avec des Headers #7
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
J'essai cette solution et je te tiens au courant . Merci
----------
Concernant les valeurs lors de la compilation peut tu me dire a quoi cela correspond stp ? Je ne connais pas grand chose sur la compilation à la main (triste pour un étudiant en programmation ...^^).

Dernière modification par Babolow (24-12-2012 13:56:25)

24-12-2012 16:07:18  Re: Fatal error avec des Headers #8
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
En fait, ils correspondent aux options que tu as choisi lors de l'installation des libs :
- WX_SHARED vaut 1 si tu utilises les libs dynamiques, 0 dans le cas contraire
- WX_UNICODE vaut 1 si tu utilises les libs unicode, 0 dans le cas contraire
- WX_DEBUG vaut 1 si tu utilises les libs "debug", 0 dans le cas contraire
- WX_VERSION vaut 28 car il me semble bien que tu utilises les libs versions 2.8.x (alors qu'à l'origine, wxChart estprévu pour les libs wxWidgets-2.6.x)
- WX_MONOLITHIC vaut 1 si tu utilises les libs monolithiques (il me semble bien que c'est ton cas), 0 dans le cas contraire

Il ne faut pas oublier de renseigner la variable système WXWIN.
Pour voir si c'est bien le cas, dans ta fenêtre de commandes, tu tapes :

Code:

echo %WXWIN%

Tu devrais normalement obtenir le chemin d'installation de tes libs.
Si ça n'est pas bon, tu peux "forcer" cette variable directement en tapant :

Code:

set WXWIN=C:\wxWidgets-2.8.12

Cette commande est bien entendu à adapter à ton installation.

Tiens-moi au courant.

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
24-12-2012 16:54:45  Re: Fatal error avec des Headers #9
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
Concernant le chemin d'installation des libs il est bon. Je l'ai testé avec la commande que tu ma donnée. Ensuite lorsque je veut compiler, j'ai l'erreur suivante :

mingw32-make n'est pas reconnu en tant que commande ...
24-12-2012 17:29:17  Re: Fatal error avec des Headers #10
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Ça, ça vient sans doute du fait que lors de l'installation de Code::Blocks, le chemin vers les exécutables de MinGW n'est pas ajouté à la variable système PATH.

Il faut que tu localises où est installé MinGW sur ton disque dur.
Les exécutables nécessaires sont dans le sous-dossier "bin".

Dans ta fenêtre de commandes, tu peux l'ajouter directement en entrant :

Code:

set PATH=%PATH%;C:\Dossier\D'install\De\MinGW\bin

À la limite, crée directement un petit fichier batch dans le dossier "build" de wxChartCtrl que tu nommeras par exemple "compilation.bat" et dans lequel tu mettras tout ce qu'il faut pour lancer la compilation :

Code:

set PATH=%PATH%;C:\Dossier\D'install\De\MinGW\bin
mingw32-make -f makefile.gcc WX_SHARED=1 WX_UNICODE=1 WX_DEBUG=0 WX_VERSION=28 WX_MONOLITHIC=0
pause

Il te suffiras de double-cliquer dessus pour lancer la compilation.
De cette façon, tu n'auras pas à tout retaper à chaque fois, et tu pourras corriger les éventuelles erreurs facilement.

Courage ;)

@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
24-12-2012 18:15:21  Re: Fatal error avec des Headers #11
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
Alléluia mes frères !!! Raison pour laquel le Path ne fonctionnai pas ... Un espace manquant ...
J'avais :
   C:\Program Files(x86)\CodeBlocks\MinGW\bin
A la place de :
   C:\Program Files (x86)\CodeBlocks\MinGW\bin

Je suis vraiment trop *** ... bon et bien maintenant on va reprendre sa bien et je te tiens au courant de l'avancement ^^ . Merci encore ! On va voir si le wxChartCtrl fonctionne !
----------
Pourais tu détailler cette partie qu'il me reste à effectuer stp ? Je dois effectuer cela sous CodeBlocks ? Dans les build options ?

Et enfin, ajouter le dossier "WXWIN\contrib\include\wx\charctrl" aux dossiers de recherche du compilateur, et "WXWIN\contrib\lib" à ceux du linker.

Dernière modification par Babolow (24-12-2012 18:32:58)

25-12-2012 10:54:20  Re: Fatal error avec des Headers #12
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Babolow:
Pourais tu détailler cette partie qu'il me reste à effectuer stp ? Je dois effectuer cela sous CodeBlocks ? Dans les build options ?
C'est exactement ça.
Il faut que MinGW, via Code::Blocks, sache où trouver les headers et les libs de wxChartCtrl.

Joyeux Noël !
@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
25-12-2012 12:43:32  Re: Fatal error avec des Headers #13
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
Ok je vais essayer !

Joyeux noël à toi ossi ! =)
----------
J'ai essayer de faire comme tu as dit mais sans succès... Du coup j'ai regarder où été placé les autres headers et j'ai mis les headers du wxChartCtrl dans le meme dossier :

C:\wxWidgets-2.8.12\include\wx

Cela fonctionne malgré beaucoup de warnings et une autre erreur >< (cela ne doit pas ètre la bonne solution)

Voici le resultat de la compilation sur Code::Blocks :

Code Cpp:

 
C:\wxWidgets-2.8.12\include\wx\chartpointstypes.h|30|warning: attribute ignored in declaration of 'class wxChartPointsTypes' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartpointstypes.h|30|warning: attribute for 'class wxChartPointsTypes' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartpoints.h|42|warning: attribute ignored in declaration of 'class wxChartPoints' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartpoints.h|42|warning: attribute for 'class wxChartPoints' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chart.h|46|warning: attribute ignored in declaration of 'class wxChart' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chart.h|46|warning: attribute for 'class wxChart' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartwindow.h|39|warning: attribute ignored in declaration of 'class wxChartWindow' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartwindow.h|39|warning: attribute for 'class wxChartWindow' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\legend.h|78|warning: attribute ignored in declaration of 'class wxLegend' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\legend.h|78|warning: attribute for 'class wxLegend' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\legendwindow.h|39|warning: attribute ignored in declaration of 'class wxLegendWindow' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\legendwindow.h|39|warning: attribute for 'class wxLegendWindow' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\axis.h|26|warning: attribute ignored in declaration of 'class wxAxis' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\axis.h|26|warning: attribute for 'class wxAxis' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\xaxis.h|30|warning: attribute ignored in declaration of 'class wxXAxis' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\xaxis.h|30|warning: attribute for 'class wxXAxis' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\xaxiswindow.h|39|warning: attribute ignored in declaration of 'class wxXAxisWindow' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\xaxiswindow.h|39|warning: attribute for 'class wxXAxisWindow' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\yaxis.h|31|warning: attribute ignored in declaration of 'class wxYAxis' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\yaxis.h|31|warning: attribute for 'class wxYAxis' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\yaxiswindow.h|49|warning: attribute ignored in declaration of 'class wxYAxisWindow' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\yaxiswindow.h|49|warning: attribute for 'class wxYAxisWindow' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartctrl.h|55|warning: attribute ignored in declaration of 'class wxChartCtrl' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartctrl.h|55|warning: attribute for 'class wxChartCtrl' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartpointstypes.h|30|warning: attribute ignored in declaration of 'class wxChartPointsTypes' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartpointstypes.h|30|warning: attribute for 'class wxChartPointsTypes' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartpoints.h|42|warning: attribute ignored in declaration of 'class wxChartPoints' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartpoints.h|42|warning: attribute for 'class wxChartPoints' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chart.h|46|warning: attribute ignored in declaration of 'class wxChart' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chart.h|46|warning: attribute for 'class wxChart' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartwindow.h|39|warning: attribute ignored in declaration of 'class wxChartWindow' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartwindow.h|39|warning: attribute for 'class wxChartWindow' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\legend.h|78|warning: attribute ignored in declaration of 'class wxLegend' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\legend.h|78|warning: attribute for 'class wxLegend' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\legendwindow.h|39|warning: attribute ignored in declaration of 'class wxLegendWindow' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\legendwindow.h|39|warning: attribute for 'class wxLegendWindow' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\axis.h|26|warning: attribute ignored in declaration of 'class wxAxis' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\axis.h|26|warning: attribute for 'class wxAxis' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\xaxis.h|30|warning: attribute ignored in declaration of 'class wxXAxis' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\xaxis.h|30|warning: attribute for 'class wxXAxis' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\xaxiswindow.h|39|warning: attribute ignored in declaration of 'class wxXAxisWindow' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\xaxiswindow.h|39|warning: attribute for 'class wxXAxisWindow' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\yaxis.h|31|warning: attribute ignored in declaration of 'class wxYAxis' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\yaxis.h|31|warning: attribute for 'class wxYAxis' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\yaxiswindow.h|49|warning: attribute ignored in declaration of 'class wxYAxisWindow' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\yaxiswindow.h|49|warning: attribute for 'class wxYAxisWindow' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartctrl.h|55|warning: attribute ignored in declaration of 'class wxChartCtrl' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartctrl.h|55|warning: attribute for 'class wxChartCtrl' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\points.h|63|warning: attribute ignored in declaration of 'class wxPoints' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\points.h|63|warning: attribute for 'class wxPoints' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartcolors.h|57|warning: attribute ignored in declaration of 'class wxChartColors' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\chartcolors.h|57|warning: attribute for 'class wxChartColors' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\pie3dchartpoints.h|32|warning: attribute ignored in declaration of 'class wxPie3DChartPoints' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\pie3dchartpoints.h|32|warning: attribute for 'class wxPie3DChartPoints' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\barchartpoints.h|32|warning: attribute ignored in declaration of 'class wxBarChartPoints' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\barchartpoints.h|32|warning: attribute for 'class wxBarChartPoints' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\bar3dchartpoints.h|32|warning: attribute ignored in declaration of 'class wxBar3DChartPoints' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\bar3dchartpoints.h|32|warning: attribute for 'class wxBar3DChartPoints' must follow the 'class' keyword [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\piechartpoints.h|32|warning: attribute ignored in declaration of 'class wxPieChartPoints' [enabled by default]|
C:\wxWidgets-2.8.12\include\wx\piechartpoints.h|32|warning: attribute for 'class wxPieChartPoints' must follow the 'class' keyword [enabled by default]|
C:\Users\Thomas\Documents\Fichier Informatique\Projet C++ Perso\essai\essaiMain.cpp||In constructor 'essaiFrame::essaiFrame(wxWindow*, wxWindowID)':|
C:\Users\Thomas\Documents\Fichier Informatique\Projet C++ Perso\essai\essaiMain.cpp|70|error: 'wxChartStyle' was not declared in this scope|
||=== Build finished: 1 errors, 60 warnings (0 minutes, 2 seconds) ===|


Si cela te parais une très mauvaise idée dit le moi ^^ .

Dernière modification par Babolow (26-12-2012 14:46:46)

26-12-2012 15:39:52  Re: Fatal error avec des Headers #14
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Salut.

Non, ce n'est pas forcément une mauvaise idée.
Le seul problème que tu pourras rencontrer, c'est le jour où tu veux supprimer ce composant de ton installation, il faudra se rappeler ce que tu y a copié.

En attendant, essaye déjà de supprimer cette quantité phénoménale de warnings que tu obtiens en ajoutant "-include wx/chartdef.h" dans les options du compilateur.

Ensuite, il faut savoir quelle version de wxChartCtrl tu as téléchargé.
Sur la page de téléchargements, il y a la version "0.2" et "1.0".

Si tu regardes les dates, la version "0.2" est plus récente que la "1.0" et c'est à mon avis celle-ci qu'il faut utiliser (par exemple, la version 1.0 ne défini pas de wxChartStyle).

Si tu as bien la version 0.2, alors là, je ne vois pas d'où peut venir le problème, puisque wxChartStyle est défini dans <wx/chartctrl.h> qui est inclus dans "essaiMain.h". Il n'y a donc pas de raison pour que le compilateur te donne cette erreur.

Dans le pire des cas, fait l'essai en remplaçant :

Code wxWidgets:

Chart1 = new wxChartCtrl(this,ID_CHART1,(wxChartStyle)(DEFAULT_STYLE),......

par

Code wxWidgets:

Chart1 = new wxChartCtrl(this,ID_CHART1, DEFAULT_STYLE,......


@+
Xav'

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
26-12-2012 18:46:17  Re: Fatal error avec des Headers #15
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
J'ai la version 1.0 je vais changer et réessayer. Concernant "-include wx/chartdef.h" peut tu me dire plus précisément où je doit le mettre stp car je n'ai pas trouvé .

Merci d'avance.
26-12-2012 18:50:37  Re: Fatal error avec des Headers #16
Xaviou (Administrateur)
Lieu: Annecy (74)
Inscrit le : 27-08-2007
Messages: 1375
Snippets: 25
Tutoriels: 6
Site web
Hors ligne
Tu places ça dans "Project" -> "Build options" -> "Compiler settings" -> "Other options"

Le nouveau portail wxWidgets francophone : www.wxdev.fr
Ben en fait, vous y êtes déjà...
26-12-2012 19:00:09  Re: Fatal error avec des Headers #17
Babolow (Membre)
Inscrit le : 21-12-2012
Messages: 11
Snippets: 0
Tutoriels: 0
Hors ligne
Parfait sa fonctionne merci. J'ai remplacer :

Code Cpp:

Chart1 = new wxChartCtrl(this,ID_CHART1,(wxChartStyle)(DEFAULT_STYLE),......
 


par :

Code Cpp:

Chart1 = new wxChartCtrl(this,ID_CHART1, DEFAULT_STYLE,......


cela fonctionne très bien.

Résultat de la compilation :

ld.exe||cannot find C:\wxWidgets-2.8.12\lib: Permission denied|
ld.exe||cannot find C:\wxWidgets-2.8.12\contrib\lib: Permission denied|
||=== Build finished: 2 errors, 0 warnings (0 minutes, 0 seconds) ===|

Cela vient du fait que j'ai donnée des mauvais liens dans les options et linkers du compilateur ?
----------
C'été bien sa j'ai réussi a résoudre le problème.
----------
Tout les problèmes ont été résolut. Merci beaucoup et bravo a toi pour tes connaissances !

Dernière modification par Babolow (26-12-2012 21:20:00)

Menu forum (navigation):
Pages: 1  
 
Accueil » Accueil forums » Utilisation générale wxWidgets
» Fatal error avec des Headers