|
From: Mojca M. <moj...@gm...> - 2009-01-14 08:23:42
|
Hello,
I'm trying to use Mike Sutton's script to compile all the needed
gnuplot libraries statically, but I have some problems with
interfering libraries.
So a really simple question: how can I build gnuplot *without* wxt
terminal, cairo-based pdf and png terminals and X? --without-wxt
doesn't make any difference.
Thanks a lot,
Mojca
|
|
From: Timothée L. <tim...@lp...> - 2009-01-14 09:08:21
|
Mojca Miklavec a écrit : > ... > > how can I build gnuplot *without* wxt > terminal, cairo-based pdf and png terminals and X? --without-wxt > doesn't make any difference. > > Thanks a lot, > Mojca > > Hi, According to "./configure --help", it is: "--without-cairo" to avoid cairo-based pdf and mng terminals "--disable-wxwidgets" to avoid wxt terminal "--without-x" to avoid X11 terminal Best regards, Timothée |
|
From: Mojca M. <moj...@gm...> - 2009-01-14 10:27:58
|
On Wed, Jan 14, 2009 at 10:08 AM, Timothée Lecomte wrote:
> Mojca Miklavec a écrit :
>>
>> how can I build gnuplot *without* wxt
>> terminal, cairo-based pdf and png terminals and X? --without-wxt
>> doesn't make any difference.
>
> According to "./configure --help", it is:
> "--without-cairo" to avoid cairo-based pdf and mng terminals
> "--disable-wxwidgets" to avoid wxt terminal
> "--without-x" to avoid X11 terminal
Thanks a lot and sorry for not reading the documentation more carefully.
But still weird. The X11 terminal doesn't get built, but I still get
dependencies on
/usr/X11R6/lib/libXpm.4.dylib (compatibility version 4.11.0,
current version 4.11.0)
/usr/X11R6/lib/libX11.6.dylib (compatibility version 6.2.0,
current version 6.2.0)
/usr/X11R6/lib/libfontconfig.1.dylib (compatibility version
1.0.0, current version 1.0.0)
/usr/X11R6/lib/libfreetype.6.dylib (compatibility version
6.3.0, current version 6.3.0)
I also got some problems with libreadline. I thought that configure
has been fixed to recognise the lack of proper libreadline, but well
... I have compiled it now and it probably works, though I cannot
figure out how to build it statically into gnuplot.
Thanks,
Mojca
|
|
From: Timothée L. <tim...@lp...> - 2009-01-14 10:48:51
|
Mojca Miklavec a écrit : > ... > But still weird. The X11 terminal doesn't get built, but I still get > dependencies on > /usr/X11R6/lib/libXpm.4.dylib (compatibility version 4.11.0, > current version 4.11.0) > /usr/X11R6/lib/libX11.6.dylib (compatibility version 6.2.0, > current version 6.2.0) > /usr/X11R6/lib/libfontconfig.1.dylib (compatibility version > 1.0.0, current version 1.0.0) > /usr/X11R6/lib/libfreetype.6.dylib (compatibility version > 6.3.0, current version 6.3.0) > In config.log you may see where these come from. Attach it and we will help. > I also got some problems with libreadline. I thought that configure > has been fixed to recognise the lack of proper libreadline, but well > ... I have compiled it now and it probably works, though I cannot > figure out how to build it statically into gnuplot. > > Thanks, > Mojca > Do you want MacOS libreadline to be built statically in gnuplot, or do you want gnuplot's built-in readline to be used instead of what configure has found ? Best regards, Timothée |
|
From: Mojca M. <moj...@gm...> - 2009-01-14 13:01:52
|
On Wed, Jan 14, 2009 at 11:48 AM, Timothée Lecomte <tim...@lp...> wrote: > Mojca Miklavec a écrit : >> >> ... >> But still weird. The X11 terminal doesn't get built, but I still get >> dependencies on >> /usr/X11R6/lib/libXpm.4.dylib (compatibility version 4.11.0, >> current version 4.11.0) >> /usr/X11R6/lib/libX11.6.dylib (compatibility version 6.2.0, >> current version 6.2.0) >> /usr/X11R6/lib/libfontconfig.1.dylib (compatibility version >> 1.0.0, current version 1.0.0) >> /usr/X11R6/lib/libfreetype.6.dylib (compatibility version >> 6.3.0, current version 6.3.0) >> > > In config.log you may see where these come from. Attach it and we will help. > >> I also got some problems with libreadline. I thought that configure >> has been fixed to recognise the lack of proper libreadline, but well >> ... I have compiled it now and it probably works, though I cannot >> figure out how to build it statically into gnuplot. >> >> Thanks, >> Mojca >> > > Do you want MacOS libreadline to be built statically in gnuplot, or do you > want gnuplot's built-in readline to be used instead of what configure has > found ? The MacOS libreadline is apparently not powerful enough, so it wouldn't help. (But it would be nice to detect that deficiency and switch to built-in readline during configuration step instead of throwing an error.) The built-in readline would be fine, but suboptimal (I've seen the switch that forces usage of built-in readline.) I would like to compile readline myself and use that one, built in statically. I did: export PATH="$prefix/bin:$PATH" export LDFLAGS="-L$prefix/lib" export CPPFLAGS="-I$prefix/include" cd libs wget -c -N http://ftp.gnu.org/gnu/readline/readline-5.2.tar.gz tar xzf readline-5.2.tar.gz cd readline-5.2 ./configure --prefix="$prefix" --disable-shared make && make install || exit 1 ... ./configure --prefix="$prefix" \ --with-png="$prefix" --with-gd="$prefix" --without-x --without-cairo --disable-wxwidgets make but otool still reports (among other dependencies) the dependency on libreadline: > otool -L src/gnuplot src/gnuplot: /Users/mojca/gnuplot/git/gnuplot-static/support_libs/lib/libreadline.5.2.dylib (compatibility version 5.0.0, current version 5.2.0) The png and gd libraries do not work properly, but that's yet another issue that I need to inspect. Thanks, Mojca |
|
From: Ethan A M. <merritt@u.washington.edu> - 2009-01-14 16:25:03
|
On Wednesday 14 January 2009, Mojca Miklavec wrote: > On Wed, Jan 14, 2009 at 11:48 AM, Timothée Lecomte > <tim...@lp...> wrote: > > Mojca Miklavec a écrit : > >> > > > >> I also got some problems with libreadline. I thought that configure > >> has been fixed to recognise the lack of proper libreadline, but well > >> ... I have compiled it now and it probably works, though I cannot > >> figure out how to build it statically into gnuplot. > >> > >> Thanks, > >> Mojca > >> > > > > Do you want MacOS libreadline to be built statically in gnuplot, or do you > > want gnuplot's built-in readline to be used instead of what configure has > > found ? > > The MacOS libreadline is apparently not powerful enough, so it > wouldn't help. (But it would be nice to detect that deficiency and > switch to built-in readline during configuration step instead of > throwing an error.) If you can figure out how to detect and configure around the OSX defective readline library, that would be great. So far, I have not seen a way to do this. It claims to be readline, but it isn't. > The built-in readline would be fine, but suboptimal (I've seen the > switch that forces usage of built-in readline.) I have been told that the OSX "libreadline" library is actually a disguised version of the BSD libedit. Since as of recently gnuplot can use libedit instead of libreadline, the best solution would be (if it works) would be to force the --with-readline=bsd on OSX configurations. Unfortunately, I do not know if OSX also provides an un-wrapped libedit that doesn't pretend to be libreadline. Could you please try ./configure --with-readline=bsd and see how it works? > I would like to compile readline myself and use that one, built in statically. > > I did: > > export PATH="$prefix/bin:$PATH" > export LDFLAGS="-L$prefix/lib" > export CPPFLAGS="-I$prefix/include" > > cd libs > wget -c -N http://ftp.gnu.org/gnu/readline/readline-5.2.tar.gz > tar xzf readline-5.2.tar.gz > cd readline-5.2 > ./configure --prefix="$prefix" --disable-shared > make && make install || exit 1 > ... > ./configure --prefix="$prefix" \ > --with-png="$prefix" --with-gd="$prefix" --without-x > --without-cairo --disable-wxwidgets > make > > but otool still reports (among other dependencies) the dependency on > libreadline: > > > otool -L src/gnuplot > src/gnuplot: > /Users/mojca/gnuplot/git/gnuplot-static/support_libs/lib/libreadline.5.2.dylib > (compatibility version 5.0.0, current version 5.2.0) > > The png and gd libraries do not work properly, but that's yet another > issue that I need to inspect. > > Thanks, > Mojca -- Ethan A Merritt Biomolecular Structure Center University of Washington, Seattle 98195-7742 |
|
From: Mojca M. <moj...@gm...> - 2009-01-14 17:17:53
|
On Wed, Jan 14, 2009 at 5:24 PM, Ethan A Merritt wrote:
>
>> The MacOS libreadline is apparently not powerful enough, so it
>> wouldn't help. (But it would be nice to detect that deficiency and
>> switch to built-in readline during configuration step instead of
>> throwing an error.)
>
> If you can figure out how to detect and configure around the OSX
> defective readline library, that would be great. So far, I have not
> seen a way to do this. It claims to be readline, but it isn't.
How do you detect the standard libreadline?
>> The built-in readline would be fine, but suboptimal (I've seen the
>> switch that forces usage of built-in readline.)
>
> I have been told that the OSX "libreadline" library is actually a disguised
> version of the BSD libedit. Since as of recently gnuplot can use libedit
> instead of libreadline, the best solution would be (if it works) would be
> to force the --with-readline=bsd on OSX configurations. Unfortunately,
> I do not know if OSX also provides an un-wrapped libedit that doesn't
> pretend to be libreadline. Could you please try
> ./configure --with-readline=bsd
> and see how it works?
It doesn't.
Making all in wxterminal
make[3]: Nothing to be done for `all'.
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../term -I../term
-DBINDIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/bin\"
-DX11_DRIVER_DIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/libexec/gnuplot/4.3\"
-DGNUPLOT_PS_DIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/share/gnuplot/4.3/PostScript\"
-DCONTACT=\"gnu...@li...\"
-DHELPFILE=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/share/gnuplot/4.3/gnuplot.gih\"
-DGNUPLOT_X11=\"`echo gnuplot_x11 | sed 's,x,x,'`\"
-I/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/include
-I/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/include
-g -O2 -ObjC -MT command.o -MD -MP -MF ".deps/command.Tpo" -c -o
command.o command.c; \
then mv -f ".deps/command.Tpo" ".deps/command.Po"; else rm -f
".deps/command.Tpo"; exit 1; fi
In file included from command.c:76:
gp_hist.h:73:32: error: editline/readline.h: No such file or directory
command.c: In function 'rlgets':
command.c:2427: error: invalid type argument of '->'
make[3]: *** [command.o] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
There are the following files (not sure about the first two, but the
last four are from Mac OS X Developer tools that need to be installed
in order to be able to compile anything).
/usr/lib/libedit.2.dylib
/usr/lib/libedit.dylib
/Developer/SDKs/MacOSX10.3.9.sdk/usr/lib/libedit.2.dylib
/Developer/SDKs/MacOSX10.3.9.sdk/usr/lib/libedit.dylib
/Developer/SDKs/MacOSX10.4u.sdk/usr/lib/libedit.2.dylib
/Developer/SDKs/MacOSX10.4u.sdk/usr/lib/libedit.dylib
But I only have
/sw/include/editline/readline.h
and /sw doesn't cound into standard libraries (that's fink).
There's also
/Developer/SDKs/MacOSX10.4u.sdk/usr/include/readline/readline.h
but that path is not included when building gnuplot.
Mojca
|
|
From: Ethan M. <merritt@u.washington.edu> - 2009-01-14 18:40:52
|
On Wednesday 14 January 2009 09:17:45 Mojca Miklavec wrote:
> On Wed, Jan 14, 2009 at 5:24 PM, Ethan A Merritt wrote:
> >
> >> The MacOS libreadline is apparently not powerful enough, so it
> >> wouldn't help. (But it would be nice to detect that deficiency and
> >> switch to built-in readline during configuration step instead of
> >> throwing an error.)
> >
> > If you can figure out how to detect and configure around the OSX
> > defective readline library, that would be great. So far, I have not
> > seen a way to do this. It claims to be readline, but it isn't.
>
> How do you detect the standard libreadline?
AC_CHECK_LIB(readline, remove_history,
[TERMLIBS="-lreadline $gp_tcap $TERMLIBS"],, [${gp_tcap}])
We test for the presence of remove_history() because this was introduced
in whatever version of libreadline that is the minimal requirement.
> >> The built-in readline would be fine, but suboptimal (I've seen the
> >> switch that forces usage of built-in readline.)
> >
> > I have been told that the OSX "libreadline" library is actually a disguised
> > version of the BSD libedit. Since as of recently gnuplot can use libedit
> > instead of libreadline, the best solution would be (if it works) would be
> > to force the --with-readline=bsd on OSX configurations. Unfortunately,
> > I do not know if OSX also provides an un-wrapped libedit that doesn't
> > pretend to be libreadline. Could you please try
> > ./configure --with-readline=bsd
> > and see how it works?
>
> It doesn't.
>
> Making all in wxterminal
> make[3]: Nothing to be done for `all'.
> if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../term -I../term
> -DBINDIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/bin\"
> -DX11_DRIVER_DIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/libexec/gnuplot/4.3\"
> -DGNUPLOT_PS_DIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/share/gnuplot/4.3/PostScript\"
> -DCONTACT=\"gnu...@li...\"
> -DHELPFILE=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/share/gnuplot/4.3/gnuplot.gih\"
> -DGNUPLOT_X11=\"`echo gnuplot_x11 | sed 's,x,x,'`\"
> -I/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/include
> -I/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/include
> -g -O2 -ObjC -MT command.o -MD -MP -MF ".deps/command.Tpo" -c -o
> command.o command.c; \
> then mv -f ".deps/command.Tpo" ".deps/command.Po"; else rm -f
> ".deps/command.Tpo"; exit 1; fi
> In file included from command.c:76:
> gp_hist.h:73:32: error: editline/readline.h: No such file or directory
Actually, that looks like maybe it *did* work.
It apparently found the library correctly, but then failed to find the
corresponding header files. Is there an OSX developer's kit or something
that contains the header files for system libraries?
> command.c: In function 'rlgets':
> command.c:2427: error: invalid type argument of '->'
> make[3]: *** [command.o] Error 1
> make[2]: *** [all-recursive] Error 1
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2
>
> There are the following files (not sure about the first two, but the
> last four are from Mac OS X Developer tools that need to be installed
> in order to be able to compile anything).
>
> /usr/lib/libedit.2.dylib
> /usr/lib/libedit.dylib
> /Developer/SDKs/MacOSX10.3.9.sdk/usr/lib/libedit.2.dylib
> /Developer/SDKs/MacOSX10.3.9.sdk/usr/lib/libedit.dylib
> /Developer/SDKs/MacOSX10.4u.sdk/usr/lib/libedit.2.dylib
> /Developer/SDKs/MacOSX10.4u.sdk/usr/lib/libedit.dylib
>
> But I only have
> /sw/include/editline/readline.h
> and /sw doesn't cound into standard libraries (that's fink).
>
> There's also
> /Developer/SDKs/MacOSX10.4u.sdk/usr/include/readline/readline.h
> but that path is not included when building gnuplot.
>
> Mojca
>
--
Ethan A Merritt
Biomolecular Structure Center
University of Washington, Seattle 98195-7742
|
|
From: Ethan M. <merritt@u.washington.edu> - 2009-01-14 20:08:24
|
On Wednesday 14 January 2009 10:40:39 Ethan Merritt wrote:
> On Wednesday 14 January 2009 09:17:45 Mojca Miklavec wrote:
> > > I have been told that the OSX "libreadline" library is actually a disguised
> > > version of the BSD libedit. Since as of recently gnuplot can use libedit
> > > instead of libreadline, the best solution would be (if it works) would be
> > > to force the --with-readline=bsd on OSX configurations. Unfortunately,
> > > I do not know if OSX also provides an un-wrapped libedit that doesn't
> > > pretend to be libreadline. Could you please try
> > > ./configure --with-readline=bsd
> > > and see how it works?
> >
> > It doesn't.
> >
> > Making all in wxterminal
> > make[3]: Nothing to be done for `all'.
> > if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../term -I../term
> > -DBINDIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/bin\"
> > -DX11_DRIVER_DIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/libexec/gnuplot/4.3\"
> > -DGNUPLOT_PS_DIR=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/share/gnuplot/4.3/PostScript\"
> > -DCONTACT=\"gnu...@li...\"
> > -DHELPFILE=\"/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/share/gnuplot/4.3/gnuplot.gih\"
> > -DGNUPLOT_X11=\"`echo gnuplot_x11 | sed 's,x,x,'`\"
> > -I/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/include
> > -I/Users/mojca/moje/dev/gnuplot/git/gnuplot-static/support_libs/include
> > -g -O2 -ObjC -MT command.o -MD -MP -MF ".deps/command.Tpo" -c -o
> > command.o command.c; \
> > then mv -f ".deps/command.Tpo" ".deps/command.Po"; else rm -f
> > ".deps/command.Tpo"; exit 1; fi
> > In file included from command.c:76:
> > gp_hist.h:73:32: error: editline/readline.h: No such file or directory
>
> Actually, that looks like maybe it *did* work.
> It apparently found the library correctly, but then failed to find the
> corresponding header files. Is there an OSX developer's kit or something
> that contains the header files for system libraries?
I have now tried it myself, on an OSX 10.4 machine
I got this warning message from running ./configure --with-readline=bsd
checking for editline/readline.h... no
configure: WARNING: found BSD editline library but not readline.h
please add path to readline.h to CPPFLAGS in Makefile
If I copy that header file over from a linux machine, then the
configure + make is successful under OSX 10.4 (Leopard), except that I
had to manually add -lhistory to the compile command. That is easily
fixable in the configure script.
The resulting executable works fine for tab-completion, line editing,
and within-session history commands. It does not seem to remember
the commands from previous sessions (not sure whether that is fixable
or not, but I can live without it).
So I'd say this is 99% of the way towards a successful automated
configure+build on a stock OSX 10.4 (Leopard) machine, with full support for
readline via the BSD editline that ships with OSX. The only trick is
figuring out where OSX users are supposed to get the editline/readline.h
header file. Is there some standard development kit we can tell them
is required?
Ethan
|