[cc'ed to the list] On Wed, 21 Apr 2004 16:01:08 +0100 (BST) JX wrote:
Hi, J> I have actually managed to finally get mahogany to build, but J> unfortunately there seems to be a problem. wxWindows causes an assert - J> something to do with bitmaps. What does it say exactly? J> > J> The tricky problem was to do with the fact that when building the J> > J> c-client code, a file called CCTYPE is generated. Renaming this J> > file J> > J> solves the problem. J> > J> > Could you please explain me why is this a problem? J> J> No, but the file is dynamically generated. if you change the c-client J> makefile to use the name CCLIENT_CCTYPE instead, everything works just J> fine. I have met similar problems to this before, but have only the J> vaguest most intuitive hunches as to what is happening. Best just to J> avoid the issue altogether. Sorry, I'm still very confused... which issue? I don't understand what the problem was nor even do I understand completely what should be changed to fix it. J> Umm, lots of things. Let's start at the basics. __CYGWIN__ is not J> getting defined - I have to manually tweak makeopts to define it. J> J> If __CYGWIN__ is defined, OS_WIN is defined as a result. This is already wrong... We should use OS_UNIX for cygwin. This will probably fix some things -- and might break other ones too. J> The CPP file includes mcclient.h (which includes <wx/msw/winundef.h> J> and does a #undef SendMessage - the comment in mcclient.h is that J> winundef.h does not undefine it). However windows.h has not yet been J> included, so a little later it includes <wx/msw/winundef.h>. However it J> does not also do the #undef SendMessage which is needed. So the fix is J> to #undef SendMessage just after winundef.h is included. Ok, I see. J> Typing just "make" means the Windows libraries do not get linked in at J> all, so the symbol WinMainCRTStartup is undefined. I guess either J> configure or makefile.in needs to be altered so that GUI_LIBS also J> includes all the Windows libraries. A possible workaround is to "make J> static" 9or one of the other partial static options) as the GUI_LIBS J> options for these makes are correctly defined. Interesting... I wonder why. J> The configure script correctly detects the c-client os type (once I J> unsetenv OSTYPE which was "posix"), yet __CYGWIN__ does nto get J> defined. Possibly either configure or makefile.in need to be altered to J> set this define in the CPP_FLAGS. I don't really know where is __CYGWIN__ supposed to come from. Nerijus, where was it defined for your builds (you added it to M, right?)? J> So here is the list of code changes I made to get it all to work. If J> you want my full list of build instructions, feel free to ask. What I'd really like, in fact, would be a patch which I could apply to the sources, preferrably to the latest cvs which already has some of the fixes below applied (those mentioned in your previous message to be exact), this would make fixing these issues simpler. But, once again, I think cygwin should be treated as Unix and not Windows at all, and this will change a lot of things. Or maybe this should be an option somehow? What do you think? Thanks, VZ ------------------------------------------------------- This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek For a limited time only, get FREE Ground shipping on all orders of $35 or more. Hurry up and shop folks, this offer expires April 30th! http://www.thinkgeek.com/freeshipping/?cpg=12297 _______________________________________________ Mahogany-Developers mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mahogany-developers