Hi Phil,


Quite the same - see my earlier reply.



Regards,



Arjen



> -----Original Message-----
> From: Phil Rosenberg [mailto:p.d.rosenb...@gmail.com]
> Sent: Monday, July 10, 2017 12:02 PM
> To: Arjen Markus; plplot-devel@lists.sourceforge.net
> Cc: Alan W. Irwin
> Subject: Re: The wxwidgets version you use for MSVC
>
> I just checked in my version. I have
>
> class WXDLLIMPEXP_CORE wxSize
> {
> public:
>     // members are public for compatibility, don't use them directly.
>     int x, y;
>     // constructors
>     wxSize() : x(0), y(0) { }
>     wxSize(int xx, int yy) : x(xx), y(yy) { }
>
> The last line is the important one. What does it look like in your version?
>
> I have just looked on GitHub on the latest source
> (https://github.com/wxWidgets/wxWidgets/blob/master/interface/wx/gdicmn.h)
> and this constructor has indeed changed to not inlined and instead looks like
>
> wxSize(int width, int height);
>
> I would suggest that there is some mismatch between the headers you have and
> the dll. The dll used inlined version, so includes no definition and the 
> headers have
> the non inlined version so also includes no definition. The linker is 
> therefore
> rightfully complaining there is no definition. If this is the case then it's 
> a bug with the
> wxWidgets distribution.
>
> Phil
>
> On 10 July 2017 at 10:48, Phil Rosenberg <p.d.rosenb...@gmail.com> wrote:
> > Hi Arjen
> > That looks like the class you are looking for. Those comments
> > shouldn't be important. They just mean that you can access x and y
> > exactly like in a C struct, for example wxSize mySize; mySize.x=4;.
> > But the comment says please don't do this.
> >
> > Further down in that class is there a constructor? it will look
> > something like wxSize( int w, int h). It looks like a function
> > declaration, but with no return type. The variable names may be
> > different too - probably some variation on width and height or x and
> > y.
> >
> > On 10 July 2017 at 10:25, Arjen Markus <arjen.mar...@deltares.nl> wrote:
> >> Hi Phil,
> >>
> >>
> >>
> >> That is definitely a possibility. I had another search for wxSize. At
> >> first I only found wxSizer (which is not the class I was looking
> >> for), but finally I did - in a header file "gdicmn.h":
> >>
> >>
> >>
> >> class WXDLLIMPEXP_CORE wxSize
> >>
> >> {
> >>
> >> public:
> >>
> >>     // members are public for compatibility, don't use them directly.
> >>
> >>     int x, y;
> >>
> >>
> >>
> >> I have no idea what to make of the comment ...
> >>
> >>
> >>
> >> Regards,
> >>
> >>
> >>
> >> Arjen
> >>
> >>
> >>
> >>
> >>
> >> From: p.d.rosenb...@gmail.com [mailto:p.d.rosenb...@gmail.com]
> >> Sent: Monday, July 10, 2017 10:59 AM
> >> To: Arjen Markus; Alan W. Irwin
> >>
> >>
> >> Subject: RE: The wxwidgets version you use for MSVC
> >>
> >>
> >>
> >> Hmm, I wonder if wxUSE_STRING_POS_CACHE is set during the wxWidgets
> >> build of the dlls, but then not during the build of plplot. That
> >> would explain a linker error there i think.
> >>
> >>
> >>
> >> You could search for wxSize::wxSize which should locate the
> >> constructors for that class, if they exist.
> >>
> >>
> >>
> >> Phil
> >>
> >>
> >>
> >> Sent from my Windows 10 phone
> >>
> >>
> >>
> >> From: Arjen Markus
> >> Sent: 10 July 2017 08:22
> >> To: p.d.rosenb...@gmail.com; Alan W. Irwin
> >> Subject: RE: The wxwidgets version you use for MSVC
> >>
> >>
> >>
> >> Hi Phil,
> >>
> >>
> >>
> >> See my answers below in context.
> >>
> >>
> >>
> >> Regards,
> >>
> >>
> >>
> >> Arjen
> >>
> >>
> >>
> >>
> >>
> >> From: p.d.rosenb...@gmail.com [mailto:p.d.rosenb...@gmail.com]
> >> Sent: Monday, July 10, 2017 12:24 AM
> >> To: Alan W. Irwin
> >> Cc: Arjen Markus
> >> Subject: RE: The wxwidgets version you use for MSVC
> >>
> >>
> >>
> >> Hi Arjen
> >>
> >> Have you built any other wxWidgets applications with this library version.
> >> Also is there a chance that you could be accessing headers from a
> >> version that s different to the dll?
> >>
> >>
> >>
> >>>>AM: I have not tried to build anything else. I had a "hello, world"
> >>>> example, but I compiled that under MinGW and as that worked and the
> >>>>PLplot  build failed, I do not think it is representative for the current 
> >>>>problem.
> >>
> >>
> >>
> >> Usually when I see wxString involved my first guess s a Unicode
> >> related flag miss match. But with those two particular methods being
> >> unrelated and probably relatively small functions, I wondered if they
> >> have been swapped from inline to not inline between wx versions, and
> >> hence if you pick up a header without inlined versions but a dll with
> >> inlined versions you will get linker errors. Just a guess though.
> >>
> >> Also try using dependency walker or dumpbin (fed into grep if you
> >> have access to it) to check if those methods or some variants are
> >> really in the dll.
> >>
> >>
> >>
> >>>>AM: The libraries and header files come from the "official"
> >>>>wxWidgets  site. But they are the DLLs only, not the static ones. I
> >>>>searched for the  string "wxString" in the header files and the
> >>>>libraries (import and DLL),  but it is ubiquitous - 904 header files
> >>>>contain that string. Luckily that  was not the case for ~wxString.
> >>>>That is defined in the string.h header file,  but conditionally:
> >>
> >>
> >>
> >> #if wxUSE_STRING_POS_CACHE
> >>
> >>   ~wxString()
> >>
> >>   {
> >>
> >>       // we need to invalidate our cache entry as another string
> >> could be
> >>
> >>       // recreated at the same address (unlikely, but still possible,
> >> with the
> >>
> >>       // heap-allocated strings but perfectly common with
> >> stack-allocated
> >> ones)
> >>
> >>       InvalidateCache();
> >>
> >>   }
> >>
> >> #endif // wxUSE_STRING_POS_CACHE
> >>
> >>
> >>
> >> No such luck though with wxSize - 504 header files.
> >>
> >>
> >>
> >> I have not yet inspected the 34 DLLs ... that is for later.
> >>
> >> 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.
> >>
> >>
> >>
> >> 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.

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.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to