Opened 10 years ago
Closed 8 years ago
#2406 closed defect (wontfix)
wxview compilation error
| Reported by: | martinl | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | 7.0.5 |
| Component: | Compiling | Version: | svn-trunk |
| Keywords: | wxview | Cc: | |
| CPU: | Unspecified | Platform: | Linux |
Description
Compilation of wxview fails on Debian stable:
c++ -g -Wall -I/opt/src/grass/dist.x86_64-unknown-linux-gnu/include -I/opt/src/grass/dist.x86_64-unknown-linux-gnu/include -I/usr/lib/x86_64-linux-gnu/wx/include/base-unicode-release-2.8 -I/usr/include/wx-2.8 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -DwxUSE_GUI=0 -pthread -DWXINTL_NO_GETTEXT_MACRO -DPACKAGE=\""grassmods"\" -I/opt/src/grass/dist.x86_64-unknown-linux-gnu/include -I/opt/src/grass/dist.x86_64-unknown-linux-gnu/include -o OBJ.x86_64-unknown-linux-gnu/main.o -c main.cpp
In file included from main.cpp:41:0:
wximgview.h:9:23: error: invalid use of incomplete type ‘class wxFrame’
In file included from /usr/include/wx-2.8/wx/wx.h:27:0,
from main.cpp:34:
/usr/include/wx-2.8/wx/utils.h:50:28: error: forward declaration of ‘class wxFrame’
In file included from main.cpp:41:0:
wximgview.h:12:5: error: ‘wxTimer’ does not name a type
wximgview.h:19:19: error: ‘wxSize’ does not name a type
wximgview.h:19:27: error: ISO C++ forbids declaration of ‘size’ with no type [-fpermissive]
wximgview.h:23:17: error: ‘wxPaintEvent’ has not been declared
wximgview.h:24:16: error: ‘wxEraseEvent’ has not been declared
wximgview.h:25:15: error: ‘wxTimerEvent’ has not been declared
wximgview.h: In constructor ‘MyFrame::MyFrame(const int&)’:
wximgview.h:20:4: error: type ‘wxFrame’ is not a direct base of ‘MyFrame’
wximgview.h:20:43: error: ‘wxDefaultPosition’ was not declared in this scope
main.cpp: In function ‘wxAppConsole* wxCreateApp()’:
main.cpp:45:1: error: cannot allocate an object of abstract type ‘MyApp’
In file included from main.cpp:41:0:
wximgview.h:33:7: note: because the following virtual functions are pure within ‘MyApp’:
In file included from /usr/include/wx-2.8/wx/wx.h:26:0,
from main.cpp:34:
/usr/include/wx-2.8/wx/app.h:89:17: note: virtual int wxAppConsole::OnRun()
main.cpp: At global scope:
main.cpp:47:1: error: incomplete type ‘wxFrame’ used in nested name specifier
main.cpp:48:1: error: invalid use of non-static member function ‘void MyFrame::erase(int&)’
main.cpp:48:1: error: ‘wxEraseEventHandler’ was not declared in this scope
main.cpp:49:1: error: invalid use of non-static member function ‘void MyFrame::redraw(int&)’
main.cpp:49:1: error: ‘wxPaintEventHandler’ was not declared in this scope
main.cpp:50:30: error: invalid use of non-static member function ‘void MyFrame::tick(int&)’
main.cpp:50:34: error: ‘EVT_TIMER’ was not declared in this scope
main.cpp:51:1: error: expected ‘}’ before ‘wxEventTableEntry’
main.cpp:51:1: error: expected ‘,’ or ‘;’ before ‘wxEventTableEntry’
main.cpp:51:1: error: expected declaration before ‘}’ token
main.cpp: In function ‘wxAppConsole* wxCreateApp()’:
main.cpp:45:1: warning: control reaches end of non-void function [-Wreturn-type]
make: *** [OBJ.x86_64-unknown-linux-gnu/main.o] Error 1
BTW, is this application used by someone? Probably it could be disabled from compilation, what do you think?
Change History (3)
comment:1 by , 10 years ago
comment:2 by , 8 years ago
| Milestone: | 7.0.0 → 7.0.5 |
|---|
comment:3 by , 8 years ago
| Resolution: | → wontfix |
|---|---|
| Status: | new → closed |
wxview has been already removed.
Note:
See TracTickets
for help on using tickets.

Replying to martinl:
The wx-config script used by configure has disabled the GUI component of wxWidgets.
If you have multiple versions of wxWidgets installed, pass the full path to the correct wx-config script to the --with-wxwidgets= configure option.
If you only have a GUI-less version of wxWidgets, it appears that we don't handle that correctly at present. As for whether we should care about that ...