bonjour
je pense que ce problème revient souvent, en tout cas c'est ce que j'ai constaté en cherchant à résoudre mon problème...
j'ai esayé plusieurs procédure mais aucune ne fonctionne...
je veux utiliser wxwidget 2.8.4 avec MinGW sous Windows XP Pro
j'ai installé Mingw et mysys avec la version 3.2.3 de gcc
Mingw, Msys et wxwidget sont installés sur c:
la bib wxwidget est compilée.
j'ai défini une variable d'environnement
Dans mon PATH j'ai mis
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 WXWIN=C:\wxWidgets-2.8.4
et donc voici mes 2 fichiers qui me permettent d'afficher une simple fenetre avec wxwidget:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 C:\MinGW\bin;C:\MinGW\Msys\1.0\bin;C:\wxWidgets-2.8.4\include;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 /********/ /*basic.h*/ /*******/ #ifndef BASIC_H #define BASIC_H class BasicApplication: public wxApp { public: virtual bool OnInit(); }; class BasicFrame: public wxFrame { public: BasicFrame(const wxChar *titile, int xpos, int ypos, int width, int height); ~BasicFrame(); }; #endif
et j'ai les erreurs suivantes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 /**********/ /*basic.cpp*/ /*********/ #include "basic.h" #include <wx/wx.h> IMPLEMENT_APP(BasicApplication) bool Basicpplication::OnInit() { BasicFrame *frame = new BasicFrame("Basic", 50, 50, 450, 300); frame->Show(TRUE); SetTopWindow(frame); return TRUE; } BasicFrame::BasicFrame(const wxChar *title, int xpos, int ypos intwidth, int height): wxFrame((wxFrame *)NULL, -1, title, wxPoint(xpos, ypos), wxSize(widht, heigt)) { } BasicFrame::~BasicFrame() { }
je pense que toutes ces erreurs viennent du fait que gcc ne trouve pas le fichier wx/wx.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 gcc -o basic basic.cpp basic.h In file included from basic.cpp:5: basic.h:9: parse error before `{' token basic.h:15: parse error before `{' token basic.h:18: destructors must be member functions basic.h:19: parse error before `}' token basic.cpp:6:19: wx/wx.h: No such file or directory basic.cpp:10: ISO C++ forbids declaration of `IMPLEMENT_APP' with no type basic.cpp: In function `int IMPLEMENT_APP(BasicApplication)': basic.cpp:10: `<anonymous>' has incomplete type basic.h:8: forward declaration of `class BasicApplication' basic.cpp:10: parse error before `bool' basic.cpp:10: syntax error before `::' token basic.cpp:13: syntax error before `->' token basic.cpp:14: `frame' undeclared (first use this function) basic.cpp:14: (Each undeclared identifier is reported only once for each function it appears in.) basic.cpp:14: ISO C++ forbids declaration of `SetTopWindow' with no type basic.cpp:15: parse error before `return' basic.cpp:18: parse error before `*' token basic.cpp:18: invalid use of undefined type `class BasicFrame' basic.h:14: forward declaration of `class BasicFrame' basic.cpp: In constructor `BasicFrame::BasicFrame(...)': basic.cpp:19: `wxFrame' undeclared (first use this function) basic.cpp:19: parse error before `)' token basic.cpp:19: `xpos' undeclared (first use this function) basic.cpp:19: `ypos' undeclared (first use this function) basic.cpp:19: class `BasicFrame' does not have any field named `wxPoint' basic.cpp:19: `widht' undeclared (first use this function) basic.cpp:19: `heigt' undeclared (first use this function) basic.cpp:19: class `BasicFrame' does not have any field named `wxSize' basic.cpp:19: parse error before `)' token basic.cpp:24: invalid use of undefined type `class BasicFrame' basic.h:14: forward declaration of `class BasicFrame' g++.exe: compilation of header file requested make: *** [basic] Error 1
non ?
par contre je ne comprend pas pourquoi il ne le trouve pas, le PATH me parait correct...
est-ce que quelqu'un à une idée?
merci d'avance
Partager