PDA

View Full Version : wxWindows



blahboybang
26th April 2006, 07:01 PM
When I tried to make wxWindows with Fedora Core 5, Gmake complained of numerous problems with the source code! This is definately legitimate code; I don't think it's creators would be that careless to put about 1,000 errors in their source code. There must be a problem with fedora. A chunk of errors:


./include/wx/cmndata.h:132: error: field ‘m_chosenFont’ has incomplete type
./include/wx/cmndata.h: In copy constructor ‘wxFontData::wxFontData(const wxFontData&)’:
./include/wx/cmndata.h:69: error: class ‘wxFontData’ does not have any field named ‘m_fontColour’
./include/wx/cmndata.h:69: error: ‘const class wxFontData’ has no member named ‘m_fontColour’
./include/wx/cmndata.h:73: error: class ‘wxFontData’ does not have any field named ‘m_initialFont’
./include/wx/cmndata.h:73: error: ‘const class wxFontData’ has no member named ‘m_initialFont’
./include/wx/cmndata.h:74: error: class ‘wxFontData’ does not have any field named ‘m_chosenFont’
./include/wx/cmndata.h:74: error: ‘const class wxFontData’ has no member named ‘m_chosenFont’
./include/wx/cmndata.h: In member function ‘wxFontData& wxFontData::operator=(const wxFontData&)’:
./include/wx/cmndata.h:85: error: ‘m_fontColour’ was not declared in this scope
./include/wx/cmndata.h:85: error: ‘const class wxFontData’ has no member named ‘m_fontColour’
./include/wx/cmndata.h:89: error: ‘m_initialFont’ was not declared in this scope./include/wx/cmndata.h:89: error: ‘const class wxFontData’ has no member named ‘m_initialFont’
./include/wx/cmndata.h:90: error: ‘m_chosenFont’ was not declared in this scope
./include/wx/cmndata.h:90: error: ‘const class wxFontData’ has no member named ‘m_chosenFont’
./include/wx/cmndata.h: In member function ‘void wxFontData::SetColour(const wxColour&)’:
./include/wx/cmndata.h:101: error: ‘m_fontColour’ was not declared in this scope./include/wx/cmndata.h: In member function ‘wxColour& wxFontData::GetColour()’:
./include/wx/cmndata.h:102: error: ‘m_fontColour’ was not declared in this scope./include/wx/cmndata.h: In member function ‘void wxFontData::SetInitialFont(const wxFont&)’:
./include/wx/cmndata.h:110: error: ‘m_initialFont’ was not declared in this scope
./include/wx/cmndata.h: In member function ‘wxFont wxFontData::GetInitialFont() const’:
./include/wx/cmndata.h:111: error: return type ‘struct wxFont’ is incomplete
./include/wx/cmndata.h:111: error: ‘m_initialFont’ was not declared in this scope
./include/wx/cmndata.h: In member function ‘void wxFontData::SetChosenFont(const wxFont&)’:
./include/wx/cmndata.h:113: error: ‘m_chosenFont’ was not declared in this scope./include/wx/cmndata.h: In member function ‘wxFont wxFontData::GetChosenFont() const’:
./include/wx/cmndata.h:114: error: return type ‘struct wxFont’ is incomplete
./include/wx/cmndata.h:114: error: ‘m_chosenFont’ was not declared in this scope./include/wx/ctrlsub.h: At global scope:
./include/wx/ctrlsub.h:167: error: invalid use of undefined type ‘struct wxControl’
./include/wx/window.h:60: error: forward declaration of ‘struct wxControl’
./include/wx/ctrlsub.h: In member function ‘void wxControlWithItems::SetClientData(void*)’:
./include/wx/ctrlsub.h:178: error: incomplete type ‘wxControl’ used in nested name specifier
./include/wx/ctrlsub.h: In member function ‘void* wxControlWithItems::GetClientData() const’:
./include/wx/ctrlsub.h:178: error: incomplete type ‘wxControl’ used in nested name specifier
./include/wx/ctrlsub.h: In member function ‘void wxControlWithItems::SetClientObject(wxClientData*) ’:
./include/wx/ctrlsub.h:178: error: incomplete type ‘wxControl’ used in nested name specifier
./include/wx/ctrlsub.h: In member function ‘wxClientData* wxControlWithItems::GetClientObject() const’:
./include/wx/ctrlsub.h:178: error: incomplete type ‘wxControl’ used in nested name specifier
./include/wx/bmpbuttn.h: At global scope:
./include/wx/bmpbuttn.h:30: error: expected class-name before ‘{’ token
./include/wx/bmpbuttn.h:69: error: field ‘m_bmpNormal’ has incomplete type
./include/wx/bmpbuttn.h:70: error: field ‘m_bmpSelected’ has incomplete type
./include/wx/bmpbuttn.h:71: error: field ‘m_bmpFocus’ has incomplete type
./include/wx/bmpbuttn.h:72: error: field ‘m_bmpDisabled’ has incomplete type
./include/wx/bmpbuttn.h:30: warning: ‘class wxBitmapButtonBase’ has virtual functions but non-virtual destructor
./include/wx/bmpbuttn.h: In constructor ‘wxBitmapButtonBase::wxBitmapButtonBase()’:
./include/wx/bmpbuttn.h:33: error: class ‘wxBitmapButtonBase’ does not have any field named ‘m_bmpNormal’
./include/wx/bmpbuttn.h:33: error: class ‘wxBitmapButtonBase’ does not have any field named ‘m_bmpSelected’
./include/wx/bmpbuttn.h:33: error: class ‘wxBitmapButtonBase’ does not have any field named ‘m_bmpFocus’
./include/wx/bmpbuttn.h:33: error: class ‘wxBitmapButtonBase’ does not have any field named ‘m_bmpDisabled’
./include/wx/bmpbuttn.h: In member function ‘void wxBitmapButtonBase::SetBitmapLabel(const wxBitmap&)’:
./include/wx/bmpbuttn.h:39: error: ‘m_bmpNormal’ was not declared in this scope
./include/wx/bmpbuttn.h: In member function ‘void wxBitmapButtonBase::SetBitmapSelected(const wxBitmap&)’:
./include/wx/bmpbuttn.h:41: error: ‘m_bmpSelected’ was not declared in this scope
./include/wx/bmpbuttn.h: In member function ‘void wxBitmapButtonBase::SetBitmapFocus(const wxBitmap&)’:
./include/wx/bmpbuttn.h:43: error: ‘m_bmpFocus’ was not declared in this scope
./include/wx/bmpbuttn.h: In member function ‘void wxBitmapButtonBase::SetBitmapDisabled(const wxBitmap&)’:
./include/wx/bmpbuttn.h:45: error: ‘m_bmpDisabled’ was not declared in this scope
./include/wx/bmpbuttn.h: In member function ‘const wxBitmap& wxBitmapButtonBase::GetBitmapLabel() const’:
./include/wx/bmpbuttn.h:50: error: ‘m_bmpNormal’ was not declared in this scope
./include/wx/bmpbuttn.h: In member function ‘const wxBitmap& wxBitmapButtonBase::GetBitmapSelected() const’:
./include/wx/bmpbuttn.h:51: error: ‘m_bmpSelected’ was not declared in this scope
./include/wx/bmpbuttn.h: In member function ‘const wxBitmap& wxBitmapButtonBase::GetBitmapFocus()


And yes, I did configure first.

tashirosgt
26th April 2006, 08:08 PM
If this is from a ./configure script, look at the config.log for first error. (error not warning) It might be about a missing header file. That could cause many errors.

blahboybang
26th April 2006, 09:17 PM
I can't make any sense out of this log! I'm very new at linux, and especially at compiling! I've tried compiling maybe 5 sources on this accursed computer and they all had these same problems! Why would there be a header missing in every project I've attempted? Here's the log, someone tell me what the heck is going on.

config.log (http://fileanchor.com/24941)

tashirosgt
26th April 2006, 11:52 PM
Config.logs are cryptic, but the basic idea is that the script is trying to compile a variety of programs on your machine to see what is installed on it. It's normal for many of the programs in these test to fail (for example, some of them are testing for things that would only be available in Windows.) Thiis particular log did not do a good job of stating whether the bottom line was that you system was satisifactory or not. If you did not get an error message at the end of the ./configure step, I think its conclusion was that your machine had enought stuff on it. But ./configure scripts can make mistakes - they are, after all, merely programs.

I gather your error happened during the "make" part of the process. To get a log of those errors do something like
make >&mylog.txt

Then we have to look in mylog.txt for the first fatal error.

You have to install certain packages (many with a -devel in their name) to get the headers that one needs to compile source code. Many of these -devel packages are not part of the default installation.

WxWidgets is something that I actually have compiled on FC5 or RHEL4, I don't remember which was the case. It took some effort. I was doing it in order to compile pgadmin3, which I never was able to do.

blahboybang
27th April 2006, 12:16 AM
I selected to install the developement packages during fedora installation. If there are other packages, where do I get them?

pete_1967
27th April 2006, 01:20 AM
If your intention is just to install wxWidgets, you can do that with Yum. wxWidgets are available from Fedora Extras.