From: Arjen M. <Arj...@de...> - 2017-07-11 19:50:06
|
Hi Alan, Phil, > -----Original Message----- > From: Alan W. Irwin [mailto:ir...@be...] > Sent: Monday, July 10, 2017 11:36 PM > > Anyhow, I now think you have had all the input you need from Phil and me to fix or > work around this wxwidgets linking issue you have discovered, and I look forward to > hearing from you what the solution turns out to be. > I use VERBOSE=1 to get insight in the build process, but that was of little use - most of the details are hidden in temporary files. So I checked the dependencies file (CXX.includecache) and saw only include files from d:\wxwidgets. Then I compiled the source file using the flags in flags.make and the -E option to get the preprocessed source and found that both wxString and wxSize were defined as expected (and used all over the place). So I sought the .lib files (so-called import libraries) for the symbols that were missing. None contained exactly those strings. Okay, I went back to the wxWidgets site, downloaded the latest version (as that was advertised). Exact same problem. Then I noticed something - there were separate distributions for 32 bits and 64 bits environments. And then it hit me: I had downloaded the _wrong_ bits version. From there on it went quite smoothly. After some struggles with the path I got the build to succeed and got an example to run. The only (!) problem left is that on line 378 in wxwidgets_dev.cpp the variable "offset" is used but was not previously set. This causes a debug error under MSVC: [cid:image001.png@01D2FA8F.0E63E220] A quick check of the source code did not tell me how to solve that, so I will have to leave that to you. By the way, the correct 64-bits libraries are installed in a directory containing the "x64" suffix. So my earlier change was (a) not necessary (b) an indication I had downloaded the wrong libraries. If only they had used "x86" or "x32" or something for 32-bits versions ... Regards, Arjen DISCLAIMER: This message is intended exclusively for the addressee(s) and may contain confidential and privileged information. If you are not the intended recipient please notify the sender immediately and destroy this message. Unauthorized use, disclosure or copying of this message is strictly prohibited. The foundation 'Stichting Deltares', which has its seat at Delft, The Netherlands, Commercial Registration Number 41146461, is not liable in any way whatsoever for consequences and/or damages resulting from the improper, incomplete and untimely dispatch, receipt and/or content of this e-mail. |