Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 40969 - gnuplot-3.8j build failure
Summary: gnuplot-3.8j build failure
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High blocker
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-02-09 06:59 UTC by dallas.morlock
Modified: 2004-08-07 12:52 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description dallas.morlock 2004-02-09 06:59:05 UTC
gcc  -march=i686 -O2 -pipe  -L/usr/X11R6/lib -L/usr/lib -Wl,-rpath,/usr/lib -L/usr/lib -o gnuplot  alloc.o axis.o binary.o bitmap.o color.o command.o contour.o datafile.o dynarray.o eval.o fit.o gadgets.o getcolor.o graph3d.o graphics.o help.o hidden3d.o history.o internal.o interpol.o matrix.o misc.o mouse.o parse.o plot.o plot2d.o plot3d.o pm3d.o readline.o save.o scanner.o set.o show.o specfun.o standard.o stdfn.o tables.o term.o time.o unset.o util.o util3d.o variable.o version.o -l3dkit -lvgagl -lreadline  -lncurses -lvga  -lz -lgd -lXpm -lX11 -ljpeg -lfreetype -lpng -lz -lm -lpdf  -lm
mouse.o(.text+0x1f): In function `alert':
: undefined reference to `rl_ding'
collect2: ld returned 1 exit status
make[3]: *** [gnuplot] Error 1
make[3]: Leaving directory `/var/tmp/portage/gnuplot-3.8j/work/gnuplot-3.8j.0/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/gnuplot-3.8j/work/gnuplot-3.8j.0/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/gnuplot-3.8j/work/gnuplot-3.8j.0'
make: *** [all] Error 2

!!! ERROR: media-gfx/gnuplot-3.8j failed.
!!! Function src_compile, Line 59, Exitcode 2
!!! (no error message)


Reproducible: Always
Steps to Reproduce:
1. emerge -u gnuplot
2.
3.




This might be related to my use of gcc 2.95.

Portage 2.0.50 (default-1.0, gcc-2.95.3, glibc-2.2.5-r2,2.2.5-r9, 2.4.23)
=================================================================
System uname: 2.4.23 i686 Pentium III (Coppermine)
Gentoo Base System version 1.4.3.10p1
Autoconf: sys-devel/autoconf-2.58
Automake: sys-devel/automake-1.7.7
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=i686 -O2 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.1/share/config /usr/kde/3/share/config /usr/share/config
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-march=i686 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo
ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo http://adelie.polymtl.ca/
http://gentoo.seren.com/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.us.gentoo.org/gentoo-portage"
USE="3dnow X aalib alsa apm arts avi berkdb cdr crypt cups encode esd gdbm gif
gnome-libs gpm gtk guile imlib java jpeg kde libg++ libwww mikmod mmx motif
mozilla mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib perl png postgres
python qt quicktime readline scanner sdl slang spell ssl svga tcltk tcpd tetex
tiff truetype x86 xml2 xmms xv"
Comment 1 John Keener 2004-02-12 19:30:54 UTC
I have the same problem.  In the definition of function alert() in src/mouse.c:

/* produce a beep */
static void
alert(void)
{
# ifdef GNUPMDRV
    DosBeep(444, 111);
# else
#  ifdef HAVE_LIBREADLINE
    rl_ding();
    fflush(rl_outstream);
#  else
    fprintf(stderr, "\a");
#  endif
# endif
}


readline does not have a function rl_ding()  (I'm using readline version 4.1)  It does have a function ding().  When I replaced rl_ding with ding, I was able to complete the compile, install, qmerge.

Comment 2 Ahmet Cemal ÖZGEZER 2004-02-12 19:47:39 UTC
I have (or had) the same problem but the cause was different. I had svga in my use flags. And whenever i tried to emerge gnuplot it failed (from console). With a message saying sandbox violation because of something trying to access /dev/svga. And later i logged in to X and tried to emerge and there was no problem. Now that i have emerged gnuplot this may not seem to be a bug but i just thought you would wanna know.
Comment 3 Håkon A. Hjortland 2004-02-17 14:25:18 UTC
http://cnswww.cns.cwru.edu/php/chet/readline/CHANGES:
*******************************************************************************
This document details the changes between this version, readline-4.2,
and the previous version, readline-4.1.
[...]
n.  The ding() convenience function has been renamed to rl_ding(), though the
    old function is still defined for backwards compatibility.
*******************************************************************************

So I guess gnuplot should depend on readline>=4.2.

*******************************************************************************
# emerge -p =readline-4.2a-r2

These are the packages that I would merge, in order:

Calculating dependencies   
!!! all ebuilds that could satisfy "=readline-4.2a-r2" have been masked.
!!! possible candidates are:
- sys-libs/readline-4.2a-r2 (masked by: profile)

!!! Error calculating dependencies. Please correct.
*******************************************************************************

Ouch!

Maybe a patch ("rl_ding()" => "ding()") is a better way to do it, then...
Comment 4 John (EBo) David 2004-02-21 09:26:59 UTC
I have found an initial solution.

System:
  gcc-3.3.2, kernel-2.6.3-rc2, svgalib-1.9.17-r3, gentoo synced 20040220.  Machine HP-Pavillion laptop PIII, 384MB ram.

Synopsys:
  Compilation of gnuplot-3.8j.0 failed due to "ACCERR DENIED open_wr /dev/svga".  /dev/svga is a directory, not a device.  The module that is built by svgalib (placed in /etc/module.d) is not loaded by the kernel.  Loading by hand fails.

Hack:
  I was able to get it to compile, install, and run all the gnuplot-3.8j.0/demo/*.dem examples by commenting out all references to svga.


  EBo --
Comment 5 Toon Verstraelen 2004-02-24 05:17:47 UTC
readline 4.2 is a dependancy of gnuplot 3.8.0j if the readline use-flag is set. The ebuild has the following lines in it's src_compile function

        use readline \
                && myconf="${myconf} --with-readline=gnu" \
                || myconf="${myconf} --with-readline"

And when executing ./configure --help from gnuplot-3.8j.0.tar.gz, one can find the following information:

--with-readline=gnu     use the GNU readline library (4.2 or newer required)

One should change
DEPEND=">=media-libs/libgd-2
        pdflib? ( media-libs/pdflib )
        doc? ( virtual/tetex )
        X? ( virtual/x11 )
        svga? ( media-libs/svgalib )
        readline? ( sys-libs/readline )
        plotutils? ( media-libs/plotutils )"

into:
DEPEND=">=media-libs/libgd-2
        pdflib? ( media-libs/pdflib )
        doc? ( virtual/tetex )
        X? ( virtual/x11 )
        svga? ( media-libs/svgalib )
        readline? ( >=sys-libs/readline-4.2 )
        plotutils? ( media-libs/plotutils )"

But I've seen that readline-4.3-r4 is in the stable portage tree now. I guess readline is no real problem anymore.
Comment 6 Peter Bienstman (RETIRED) gentoo-dev 2004-02-29 08:27:52 UTC
*** Bug 43133 has been marked as a duplicate of this bug. ***
Comment 7 Olivier Fisette (RETIRED) gentoo-dev 2004-08-07 12:52:11 UTC
readline-4.3-r4.ebuild is now stable for all archs for which gnuplot is available, so this should no longer be a problem.