User forums > Help
Nightly builds no longer compile
stahta01:
FYI: If you are still running Windows Vista upgrade MinGW to an version newer than that which came with C::B 8.02. Like "3.4.5 (mingw-vista special r3)"
I do not think your build of wxWidgets was done without errors.
Edit: Just tried it with your build command looks like it finished with no errors.
Just linked the wxWidgets built with Code::Blocks and it worked,
I have no idea what must be wrong with your setup; if it is WinXP.
IIRC, The build command you gave will not work with an unmodified setup.h
I think, the value of wxUSE_GLCANVAS must be 1 for OpenGL to work right.
But, since USE_OPENGL=1 is not needed for Code::Blocks not sure why you are setting it to 1.
Tim S
merlin:
oops, you got me. I did change USE_OPENGL=1. Forgot about it since it's not C::B related. I do a bit of opengl programming and i don't see the point in having multiple versions of WX around when i only need 2 (ansi & unicode) if I just compile everything I need into them.
I did a carefull step through the include sequence and I found that changing
#if defined(__WXWINCE__) || defined(__CYGWIN__)
#include <winsock.h>
#endif
to
#if defined(__WXWINCE__) || defined(__CYGWIN__) || defined(__MINGW__)
#include <winsock.h>
#endif
in gsockmsw.h fixes all of my problems with C::B. (The basic socket problem also showed up in several of the contrib plugins.)
I'll take this over to one of the wx forums and see what they have to say about it.
Unfortunately that isn't the end of my woes. The contrib plugin "Help" fails to compile with several "undefined reference to _errno" linker errors. All the other plugins do compile fine.
I seem to recall something about this from a while back. IIRC, MinGW redefines errno as a function and the programmer needs to either use it as a function or define something to tell MinGW to use the old int definition.
But the reason isn't as important as why it is mis-behaving on my system when everyone else can compile it ok. Maybe this is somehow also related to the SOCKET error?
Anyway, I'll upgrade MinGW to the latest but that also has the same error as that was what I was using a couple of days ago. I downgraded to the bundled version to try to eliminate as many variables as possible.
merlin:
Just confirming exactly the same results with the latest MinGW installed.
merlin:
Found the solution.
Later versions of MinGW need to have __USE_W32_SOCKETS defined. Put that in the MinGW compiler global settings and everything works fine.
Hope this helps someone else in the future.
Navigation
[0] Message Index
[*] Previous page
Go to full version