Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 202536 - media-gfx/graphviz-2.16.1 fails to build
Summary: media-gfx/graphviz-2.16.1 fails to build
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Graphics Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-12-17 00:26 UTC by Diego Elio Pettenò (RETIRED)
Modified: 2007-12-21 10:47 UTC (History)
7 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 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-12-17 00:26:24 UTC
Making all in cmd
Making all in dot
mkdir .libs
x86_64-pc-linux-gnu-gcc -march=athlon64 -O2 -ftracer -pipe -ftree-vectorize -Wformat=2 -Wno-error -Wno-pointer-sign -g -ggdb -Wstrict-aliasing=2 -Wno-format-zero-length -Wno-unknown-pragmas -Wstrict-prototypes -Wpointer-arith -Wall -ffast-math -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -o .libs/dot dot.o  ../../lib/gvc/.libs/libgvc.so /var/tmp/portage/media-gfx/graphviz-2.16.1/work/graphviz-2.16.1/lib/graph/.libs/libgraph.so /var/tmp/portage/media-gfx/graphviz-2.16.1/work/graphviz-2.16.1/lib/cdt/.libs/libcdt.so /var/tmp/portage/media-gfx/graphviz-2.16.1/work/graphviz-2.16.1/lib/pathplan/.libs/libpathplan.so -lm /usr/lib64/libexpat.so /usr/lib64/libltdl.so -ldl -lz
creating dot
make[3]: *** No rule to make target `../../plugin/pango/libgvplugin_pango.la', needed by `dot_builtins'.  Stop.
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
 *
 * ERROR: media-gfx/graphviz-2.16.1 failed.
 * Call stack:
 *               ebuild.sh, line   46:  Called src_compile
 *             environment, line 2790:  Called die
 * The specific snippet of code:
 *       emake || diefunc "$FUNCNAME" "$LINENO" "$?" "emake failed"
 *  The die message:
 *   emake failed
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/media-gfx:graphviz-2.16.1:20071217-001947.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-gfx/graphviz-2.16.1/temp/environment'.
 *
Comment 1 Jens Pranaitis 2007-12-17 20:45:57 UTC
Fails for me, too:

Portage 2.1.4_rc10 (default-linux/x86/2007.0, gcc-4.2.2, glibc-2.7-r1, 2.6.23-gentoo-r3 i686)
=================================================================
System uname: 2.6.23-gentoo-r3 i686 Intel(R) Celeron(R) CPU 2.60GHz
Timestamp of tree: Mon, 17 Dec 2007 14:00:01 +0000
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.3
dev-lang/python:     2.5.1-r4
sys-apps/baselayout: 2.0.0_rc6
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r2
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=pentium4 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="candy distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/"
LC_ALL="C"
LDFLAGS="-Wl,--as-needed"
LINGUAS="de"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/jenux /usr/portage/local/layman/sunrise /usr/portage/local/local"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="7zip X a52 aac aalib acl acpi additions aiglx alsa ao autoipd avahi bash-completion berkdb bitmap-fonts bzip2 caps cdparanoia cdr cdrom chroot cisco cli contrarius cracklib cran crypt css cups curl dbus device-mapper directfb disk-partition divx dmi dri dv dvd dvdnav dvdr dvdread emovix encode fam fame fat fbcon fbcondecor fbsplash ffmpeg firefox flac ftp gdbm geoip gif glitz glsa gpm hal history howl-compat iconv ieee1394 imlib inquisitio ipod ipv6 ithreads java javascript john jpeg jython kde kdehiddenvisibility kqemu libnotify libwww log4j logrotate mad mdnsresponder-compat mikmod mime mmx mmxext mng motif mozdevelop mp2 mp3 mp4 mpeg mpeg2 mplayer mudflap musepack musicbrainz ncurses network-cron newspr nls nptl nptlonly nsplugin ntfs ntlm offensive ogg opengl openmp openvpn ophsmall pam pcmcia pcre pdf perl pic pink png portage python qa qt3 qt3support qt4 quicktime rar rdesktop readline real reflection reiserfs rtc samba sdl session sftplogging slang slp socks5 spell spl sse sse2 ssl svg symlink tcpd theora threads tidy tiff tordns transparency truetype truetype-fonts type1 type1-fonts unicode userlocales vboxbfe vcd vim vim-syntax vnc vorbis wifi win32codecs wma x264 x86 xcomposite xforms xml xorg xosd xv xvid zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev joystick keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="ati radeon"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 Jeff Hayes 2007-12-18 18:01:50 UTC
Adding "cairo" and "pango" flags to USE solved this build issue for me.
And prior, the cairo package needed to be built with "svg" added to USE.
Comment 3 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2007-12-19 00:15:22 UTC
I ran into this as well.
The RDEPEND structure does not match how the configure flags are passed.
If you have USE="-X gnome gtk cairo"
then it tries to build the gnome, gtk and cairo stuff, but because of -X, it does not RDEPEND on them.

If we look at the config.log, we get this:
configure:30817: result: yes
configure:30913: checking for PANGOCAIRO
configure:30921: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.14.10"
Package pangocairo was not found in the pkg-config search path.
Perhaps you should add the directory containing `pangocairo.pc'
to the PKG_CONFIG_PATH environment variable
No package 'pangocairo' found
configure:30924: $? = 1
configure:30939: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.14.10"
Package pangocairo was not found in the pkg-config search path.
Perhaps you should add the directory containing `pangocairo.pc'
to the PKG_CONFIG_PATH environment variable
No package 'pangocairo' found
configure:30942: $? = 1
No package 'pangocairo' found
configure:30970: result: no
configure:30972: WARNING: pangocairo library not available

And similarly for gdk-pixbuf.
Comment 4 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2007-12-19 01:41:41 UTC
Ok, I tested a few build combinations, and I'm going to adjust the RDEPEND structure to match.

Doing this fails:
emerge --unmerge cairo pango ; USE="-X -cairo -pango" emerge graphviz
Because it seems the dot tool really needs the pango library now when you are using an external libgd. Look at cmd/dot/Makefile.am - WITH_MYLIBGD is false because we use the system libgd.

USE=X -> libXaw, builds the lefty tool

I've added an -r1 of the ebuild that changes this. It does mean that cairo+pango are no longer optional. If you object to that, patch/get upstream to allow disabling pango. The Makefile.am for dot can use some heavy refactoring anyway.
Comment 5 Reuben Farrelly 2007-12-19 10:41:05 UTC
I don't think the solution is entirely satisfactory.  Pulling in cairo is fine - but pulling in pango also pulls in a big heap of X related packages, and removing graphviz is a requirement for a couple of packages which I need.  On a server such as mine with no X support, this is a step backwards:

tornado log # emerge -uDNa graphviz

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] x11-misc/util-macros-1.1.5
[ebuild  N    ] x11-proto/xproto-7.0.10
[ebuild  N    ] x11-proto/xextproto-7.0.2
[ebuild  N    ] x11-proto/kbproto-1.0.3
[ebuild  N    ] x11-proto/xf86bigfontproto-1.1.2
[ebuild  N    ] x11-proto/inputproto-1.4.2.1
[ebuild  N    ] x11-libs/xtrans-1.0.4  USE="-debug"
[ebuild  N    ] x11-proto/bigreqsproto-1.0.2
[ebuild  N    ] x11-proto/xcmiscproto-1.1.2
[ebuild  N    ] x11-proto/renderproto-0.9.3
[ebuild  N    ] x11-libs/libXau-1.0.3  USE="-debug"
[ebuild  N    ] x11-libs/libXdmcp-1.0.2  USE="-debug"
[ebuild  N    ] x11-libs/libX11-1.1.3  USE="-debug -ipv6 -xcb"
[ebuild  N    ] x11-libs/libXrender-0.9.4  USE="-debug"
[ebuild  N    ] x11-libs/libXext-1.0.3  USE="-debug"
[ebuild  N    ] x11-libs/libXft-2.1.12  USE="-debug"
[ebuild  N    ] x11-libs/pango-1.18.3  USE="-debug -doc"
[ebuild  N    ] media-gfx/graphviz-2.16.1-r1  USE="jpeg nls perl png python -X -doc -examples -gnome -gtk -ruby -tcl -tk"

Would you like to merge these packages? [Yes/No] no


(All these dependencies are pulled in because of the pango dependency requirement - which has no option to disable).  I guess you could argue that the real fix is to fix pango but still...

What about the fix at http://www.mail-archive.com/openpkg-users@openpkg.org/msg03524.html   ?



Comment 6 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2007-12-20 10:15:37 UTC
That patch is a good start, but it just makes the cmd/dot/Makefile.am mess worse.
If somebody wants to post a version that factors out the massive duplication there (eg move the common stuff to some new variables), and also send it to upstream, I'll gladly accept it.
Comment 7 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2007-12-21 04:09:51 UTC
media-gfx/graphviz-2.16.1-r2 is in the tree now, with pango/cairo optional again.
"use X || use cairo || use gtk" will all trigger the cairo output module (and thus the pango text layout mode).
Comment 8 Reuben Farrelly 2007-12-21 10:47:41 UTC
Many thanks for the fix!  All builds fine now (in my case, without cairo/pango).