|
From: flapane <int...@gm...> - 2014-06-16 16:21:05
|
Configure summary: http://pastebin.com/chvuWVRM Compiling error: ---------------------- /usr/bin/ld: wxterminal/wxt_gui.o: undefined reference to symbol 'XInitThreads' //usr/lib/i386-linux-gnu/libX11.so.6: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make[4]: *** [gnuplot] Errore 1 make[4]: uscita dalla directory "/home/flapane/.svnflap/gnuplot/src" make[3]: *** [all-recursive] Errore 1 make[3]: uscita dalla directory "/home/flapane/.svnflap/gnuplot/src" make[2]: *** [all] Errore 2 make[2]: uscita dalla directory "/home/flapane/.svnflap/gnuplot/src" make[1]: *** [all-recursive] Errore 1 make[1]: uscita dalla directory "/home/flapane/.svnflap/gnuplot" make: *** [all] Errore 2 ---------------------- |
|
From: flapane <int...@gm...> - 2014-07-07 20:56:00
|
The error showed up again on Ubuntu 14.04. Regards, Flavio |
|
From: Ethan A M. <sf...@us...> - 2014-07-07 21:32:14
|
On Monday, 07 July, 2014 22:55:48 flapane wrote: > The error showed up again on Ubuntu 14.04. > > Regards, > Flavio Could you please try TERMLIBS="-lX11" ./configure |
|
From: flapane <int...@gm...> - 2014-07-07 21:34:51
|
Il 07/07/2014 23:28, Ethan A Merritt ha scritto: > Could you please try > > TERMLIBS="-lX11" ./configure It compiles flawlessy. Flavio |
|
From: flapane <int...@gm...> - 2014-07-07 21:02:50
|
My bad, I totally forgot the reference to the original thread: http://sourceforge.net/p/gnuplot/mailman/message/32467740/ /usr/bin/ld: wxterminal/wxt_gui.o: undefined reference to symbol 'XInitThreads' //usr/lib/i386-linux-gnu/libX11.so.6: error adding symbols: DSO missing from command line |
|
From: Christoph B. <us...@be...> - 2014-06-16 19:03:20
Attachments:
fix-undefined-reference.patch
|
Zitat von flapane <int...@gm...>: > > Compiling error: > ---------------------- > /usr/bin/ld: wxterminal/wxt_gui.o: undefined reference to symbol > 'XInitThreads' I get the same error since a change related to the bug report http://sourceforge.net/p/gnuplot/bugs/1401/ Since the applied 'fix' to make gnuplot work with wxWidgets 3.0 doesn't work properly, you can remove it using the attached patch. Regards, Christoph |
|
From: Ethan A M. <sf...@us...> - 2014-06-16 19:44:13
|
On Monday, 16 June, 2014 21:03:11 Christoph Bersch wrote: > Zitat von flapane <int...@gm...>: > > > > Compiling error: > > ---------------------- > > /usr/bin/ld: wxterminal/wxt_gui.o: undefined reference to symbol > > 'XInitThreads' > > I get the same error since a change related to the bug report > http://sourceforge.net/p/gnuplot/bugs/1401/ > > Since the applied 'fix' to make gnuplot work with wxWidgets 3.0 > doesn't work properly, you can remove it using the attached patch. I have tried to fix this in CVS. The problem is that despite imposing a requirement that the program calls XInitThreads, the wxt-config script doesn't actually add the corresponding required library to the dependency list. So I have changed gnuplot's autoconfigure script to add -lX11 itself if it sees that the newer wxWidgets is being used. I am a little uneasy that this may cause problems in the future on platforms where wxWidgets using wayland or carbon rather than X11, but I guess we'll find out. Ethan |
|
From: flapane <int...@gm...> - 2014-06-17 09:17:19
|
Thanks, last changes did the trick. I'll report any further non-expected behaviour, Flavio |
|
From: Jun T. <tak...@kb...> - 2014-06-19 08:47:49
|
On 2014/06/17, at 4:43, Ethan A Merritt <sf...@us...> wrote:
> So I have changed gnuplot's autoconfigure script to add -lX11
> itself if it sees that the newer wxWidgets is being used.
This causes a problem on my Mac (and maybe on other systems);
the linker dies saying "-lX11 can't be found".
(OS X 10.8 / no X11 installed / wxWidgets=svn HEAD)
The following may be a possible fix, but not tested at all on Linux.
Index: configure.in
===================================================================
RCS file: /cvsroot/gnuplot/gnuplot/configure.in,v
retrieving revision 1.368
diff -r1.368 configure.in
1037c1037,1038
< if expr ${WXWIDGETS_VERSION} \> 2.8 >/dev/null; then
---
> if expr ${WXWIDGETS_VERSION} \> 2.8 >/dev/null && \
> ${WX_CONFIG} --basename | grep 'wx_gtk' >/dev/null 2>&1; then
|
|
From: sfeam <sf...@us...> - 2014-06-19 15:44:09
|
On Thursday, 19 June 2014 05:05:45 PM Jun T. wrote:
> On 2014/06/17, at 4:43, Ethan A Merritt <sf...@us...> wrote:
> > So I have changed gnuplot's autoconfigure script to add -lX11
> > itself if it sees that the newer wxWidgets is being used.
>
> This causes a problem on my Mac (and maybe on other systems);
> the linker dies saying "-lX11 can't be found".
> (OS X 10.8 / no X11 installed / wxWidgets=svn HEAD)
I was afraid of that.
This is really a problem with the wxWidgets libraries and/or packaging.
If wx requires a initialization call to X11, it should make that call
itself rather than expecting the application to to the initialization.
Failing that, the wx package should at least have the configuration
tool wx-config report the correct dependencies. If it requires
a call to X11 then it should add -lX11 to the list generated by
`wx-config --libs` or `wx-config --linkdeps`.
As it stands, wx-config doesn't tell us what it needs so we have to
guess. I will try to report this as a bug against wxWidgets itself,
but that won't fix any existing installations.
> The following may be a possible fix, but not tested at all on Linux.
> diff -r1.368 configure.in
> 1037c1037,1038
> < if expr ${WXWIDGETS_VERSION} \> 2.8 >/dev/null; then
> ---
> > if expr ${WXWIDGETS_VERSION} \> 2.8 >/dev/null && \
> > ${WX_CONFIG} --basename | grep 'wx_gtk' >/dev/null 2>&1; then
As I understand it, wx_gtk does not necessarily use X11 as a
back end. So this test would not solve the problem for instance on
a linux system using wayland as a back end.
I notice that there was a bug-fix release of wxWidgets last week
(3.0.1). There are two items in the ChangeLog that might possibly
affect this issue. But even if they have fixed it, that still won't
make gnuplot's autoconfigure script work correctly on existing
wxWidgets installations.
Ethan
|