Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I went from mandriva 2009 32-bit to ubuntu 9.10 64-bit and wx begins to act up..
the simple program from the wx hello world tutorial build fine on my old system, but not my new on. I got the packages installed (wx2.8.10-dev, headers and whatnot)
I've looked around a bit and it seems the compiler is not including the files correctly..
Compiler output sample (because most of it is because of first errors):
Code:
k.cpp:9: error: invalid use of incomplete type ‘struct wxFrame’
/usr/include/wx-2.8/wx/utils.h:50: error: forward declaration of ‘struct wxFrame’
k.cpp:12: error: ISO C++ forbids declaration of ‘wxPoint’ with no type
k.cpp:12: error: expected ‘,’ or ‘...’ before ‘&’ token
k.cpp:14: error: ‘wxCommandEvent’ has not been declared
k.cpp:15: error: ‘wxCommandEvent’ has not been declared
k.cpp:26: error: incomplete type ‘wxFrame’ used in nested name specifier
k.cpp:27: error: ‘wxCommandEventHandler’ was not declared in this scope
I don't even know what wx is, but a google search for wxFrame was still easy and the documentation I found said you need
Code:
#include <wx/frame.h>
Your error messages tell me that you have included a full definition of wxApp but only a pre declaration of wxFrame. It seems reasonable to assume that is what you get by just using
Code:
#include "wx/wx.h"
Quote:
I went from mandriva 2009 32-bit to ubuntu 9.10 64-bit and wx begins to act up.
I'd rather not even guess what difference made it include the full definition of wxFrame when you had whatever version of wx installed on some other Linux. The documentation says you should include wx/frame.h when using wxFrame, so that seems to be the thing to do.
I'd also rather not guess any of the consequences of your use of "wx/wx.h" rather than the documentation suggested <wx/wx.h>. But maybe you should look at that as well.
I think there is something wrong with the packages for wx on this ubuntu
After compiling the wx library myself, and linking to that one instead it worked fine
Maybe i should notify the ubuntu team?
Do what you like in that regard. I expect the Ubuntu team is used to seeing a lot of confused and incorrect problem reports.
I don't know enough about wx to have any opinion on whether there is an actual problem in Ubuntu's package for wx.
But when you use the phase "compiling the wx library myself, and linking to that one" for a problem that has nothing to do with the compiled portion of wx nor with (the likely meaning of) "linking", I have to assume you are still confused about the situation.
The problem, if there is one, would be in which headers are installed by the package and where they are installed, not with any binary (compiled) part of the package.
If you do ask the Ubuntu team about this problem, please include the URL of this thread in what you send them, both to give them context and so that if you get the attention of anyone competent to answer, they might post something helpful in this thread.
im pretty much no C++ guru. So i suppose i got the wrong words for what i mean.
when you compile something with wx you use the program wx-config with different commands to tell the compiler what it should be doing and whatnot.
now i just ran a diff on the different outputs from wx-config (/urs/local/bin/wx-config and just wx-config) and there is no difference..
I dont know what was wrong then.. but it got solved by compiling the wx library myself
I see the post has been quiet for a while, but I am posting a possible solution for people finding it through google like me.
It appears that, in Karmic, the libwxgtk* packages, needed to my understanding to render the GUI elements under X, are not a dependency of the general WX packages. Try installing them explicitely...
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.