|
From: sfeam <sf...@us...> - 2017-09-04 19:26:49
|
On Monday, 04 September 2017 11:50:11 Dima Kogan wrote: > Dima Kogan <gn...@di...> writes: > > > sfeam <sf...@us...> writes: > > > >> On Thursday, 17 August 2017 19:17:05 Dima Kogan wrote: > >>> On Thu, Aug 17, 2017, at 14:13, Ethan A Merritt wrote: > >>> > >>> > > 2. The build was broken on a recent Debian system: we were calling > >>> > > XInitThreads(), but not linking in -lX11. The patch adds the linkage > >>> > > >>> > Sigh. This keeps coming back and back and back. > >>> > Adding -lX11 fixes most linux installations but breaks everyone else. > >>> > > >>> > See for example https://sourceforge.net/p/gnuplot/bugs/1764/ > >>> > >>> OK, I read your links, but it's not obvious how it breaks everyone else. > >>> Is the concern that some platforms have wx, but not X11, so the link to > >>> libX11 will fail? What if instead of linking to -lX11 we link to > >>> $LIBRARIES_FOR_X? > >> > >> Doesn't that just push the same problem down or up one level? > >> The question then becomes how do you figure out what to put > >> in $LIBRARIES_FOR_X. > > Pinging this thread before I forget about it. Can we please merge the > patch? > > On systems where X11 is available, $LIBRARIES_FOR_X will contain the X11 > link flags, so we'll link in the appropriate library, and things will > work. I do not think this is correct. What about systems where X is "available" but is not used for wxt? I think that is true for both OSX and Windows. My recollection is that putting -LX11 in the build flags broke OSX. For that matter, even on my linux systems that still use wxgtk 2.8 rather than 3.0, the -lX11 is not needed. In this case it doesn't break anything, but still it's annoying to include a library dependency that isn't even used. gnuplot itself does not use the X libraries. I still think this is a wxgtk configuration error and not something that gnuplot can fix on its own. Ethan > > On systems where X11 is not available, $LIBRARIES_FOR_X will be "", so > nothing extra will be linked in, and things will keep functioning as > before. |