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'. *
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
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.
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.
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.
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 ?
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.
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).
Many thanks for the fix! All builds fine now (in my case, without cairo/pango).