Application: graphviz-2.6-r1 . The build process stops like this (I cut out most of the lines): [...] i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -I../../lib/gvc -I../../lib/common -I../../lib/graph -I../../lib/cdt -I../../lib/pathplan -I/usr/lib/perl5/5.8.8/i686-linux/CORE -I/usr/include/python2.4 -mcpu=athlon-xp -O3 -pipe -c gv_perl.cpp -fPIC -DPIC -o .libs/gv_perl.o gv_perl.cpp:879: error: syntax error before `__attribute__' gv_perl.cpp:879: error: syntax error before `)' token gv_perl.cpp:880: error: syntax error before `*' token gv_perl.cpp:885: error: 'SwigPerlWrapperPtr' is used as a type, but is not defined as a type. gv_perl.cpp:1145: error: syntax error before `__attribute__' gv_perl.cpp: In function `void _wrap_graph__SWIG_0(...)': gv_perl.cpp:1152: error: syntax error before `if' gv_perl.cpp:1154: error: syntax error before `}' token gv_perl.cpp:1157: error: ISO C++ forbids declaration of `result' with no type [...] I tried with empty CFLAGS - the result is the same. The full output of emerge: http://liku.sdfpau.org/emerge.7z (use http://www.7-zip.org/ to unpack, 35k archive, 650k after unpacking). Maybe something's wrong with my system's settings??? emerge --info: --- start --- Portage 2.1_pre4-r1 (default-linux/x86/2005.1, gcc-3.3.6, glibc-2.3.6-r2, 2.6.15-gentoo-r5 i686) ================================================================= System uname: 2.6.15-gentoo-r5 i686 AMD Athlon(tm) XP 2000+ Gentoo Base System version 1.12.0_pre15 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] dev-lang/python: 2.3.5-r2, 2.4.2-r1 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1-r1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r3 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-mcpu=athlon-xp -O3 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d" CXXFLAGS="-mcpu=athlon-xp -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks keepwork sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.prz.rzeszow.pl http://gentoo.zie.pg.gda.pl" LC_ALL="pl_PL.utf8" LINGUAS="pl en" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 3dnow X a52 aac aalib acl acpi adabas aim alsa apache2 apm arts audiofile avahi avi bash-completion berkdb bitmap-fonts bluetooth bonobo browserplugin bzip2 calendar caps cdb cdda cdparanoia cdr cpdflib crypt css ctype cups curl curlwrappers daap db2 dba dbase dbm dbmaker dbus dbx dga dio directfb divx4linux dlloader doc dri dts dv dvd dvdr dvdread dynagraph eds emboss encode esd ethereal exif expat extras fam fbcon ffmpeg fftw flac flash foomaticdb fortran freetype ftp gb gcj gd gdbm ggi gif gimpprint glut gmp gnome gnutls gphoto2 gpm gps gstreamer gtk gtk2 gtkhtml hal httpd iconv icq ieee1394 imagemagick imlib ipv6 jabber jack java javascript jikes joystick jpeg kde kdeenablefinal kdexdeltas kerberos kqemu lesstif libcaca libg++ libwww linguas_en linguas_pl lirc live lm_sensors mad maildir matroska matrox mbox mcal mikmod mime ming mmx mmxext mng mod mono motif mp3 mpeg mpi msn musepack musicbrainz mysql nas ncurses nls nptl nsplugin nvidia offensive ogg oggvorbis openal opengl osc oscar oss pam pam_console pcntl pcre pda pdf pdflib perl php plotutils png portaudio posix postgres ppds python qdbm qt quicktime readline real rtc samba scanner screen sdl session shorten shout skey skins slang slp sndfile snmp sockets socks5 sox speex spell sse ssl stream svg svga symlink sysvipc tcltk tcpd tetex tga theora threads tidy tiff truetype truetype-fonts type1-fonts unicode usb userlocales utf8 v4l v4l2 vcd vlm vorbis wifi win32codecs wmf wxwindows x264 xine xinerama xml xml2 xosd xpm xprint xv xvid yahoo zip zlib elibc_glibc kernel_linux userland_GNU" Unset: ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LDFLAGS, MAKEOPTS --- end ---
This looks related to memory fixes in perl 5.8.8 as far as unsafe calls to the SV memory space.
Not much of a fix, but locally if I run configure with --disable-swig against 2.8 (didn't try with what's in the tree) the perl bindings build properly.
I met the same problem: ...... cut off...... gv_perl.cpp:5491: error: register name not specified for `SV**mark' {standard input}: Assembler messages: {standard input}:8236: Error: symbol `_ZZ7boot_gvE5_init' is already defined make[3]: *** [gv_perl.lo] Error 1 make[3]: *** Waiting for unfinished jobs.... i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -I../../lib/gvc - I../../lib/common -I../../lib/graph -I../../lib/cdt -I../../lib/pathplan -I/usr/ lib/perl5/5.8.8/i686-linux/CORE -I/usr/include/python2.4 -O2 -march=athlon -pipe -fomit-frame-pointer -O2 -march=athlon -pipe -fomit-frame-pointer -c gv_python. cpp -fPIC -DPIC -o .libs/gv_python.o make[3]: Leaving directory `/var/tmp/portage/graphviz-2.6-r1/work/graphviz-2.6/t clpkg/gv' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/graphviz-2.6-r1/work/graphviz-2.6/t clpkg' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/graphviz-2.6-r1/work/graphviz-2.6' make: *** [all] Error 2 !!! ERROR: media-gfx/graphviz-2.6-r1 failed. Call stack: ebuild.sh, line 1894: Called dyn_compile ebuild.sh, line 941: Called src_compile !!! Compile Failed! !!! If you need support, post the topmost build error, and the call stack if rel evant.
I have the same issue as well...
This error is caused by XS definition in XSUB.h (/usr/lib/perl5/5.8.8/i686-linux/CORE/XSUB.h) line 95, difference between Perl version 5.8.7 and 5.8.8: 5.8.7: # define XS(name) void name(pTHX_ CV* cv) 5.8.8: # define XS(name) void name(pTHX_ CV* cv __attribute__unused__) Removing __attribute__unsed__ seems to fix the problem (just checked if the gv_perl.cpp compiles without errors). I'm trying to track down this change in Perl.
Similar problem is described here: http://tiny.pl/mf7k (perl newsgroup, if link doesn't work search for message id: 20060215125148.GA12535[at]brugman.iloquent.nl on GoogleGroups). New versions of Perl *should* fix the problem.typedef void SwigPerlWrapper( CV* cv __attribute__((unused)))
fixed in blead, i'll backport a patch for 5.8.8 and post.
(In reply to comment #7) > fixed in blead, i'll backport a patch for 5.8.8 and post. ... same ... make[3]: Leaving directory `/var/tmp/portage/graphviz-2.6-r1/work/graphviz-2.6/tclpkg/gv' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/graphviz-2.6-r1/work/graphviz-2.6/tclpkg' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/graphviz-2.6-r1/work/graphviz-2.6' make: *** [all] Error 2 !!! ERROR: media-gfx/graphviz-2.6-r1 failed. Call stack: ebuild.sh, line 1928: Called dyn_compile ebuild.sh, line 966: Called src_compile !!! Compile Failed
(In reply to comment #8) > ... same ... yep :/
This particular bug is fixed with perl-5.8.8-r1 (fixes for c++ and xs interaction). However, I now get: mkdir -p test_perl; cd test_perl; \ ln -fs ../.libs/libgv_perl.so gv.so; \ ln -fs ../*.dot ../*.p[lm] .; \ perl ./test.pl) Can't open perl script "./test.pl": No such file or directory make[3]: [test_perl] Error 2 (ignored) (mkdir -p test_python; cd test_python; \ ln -fs ../.libs/libgv_python.so _gv.so; \ ln -fs ../*.dot ../*.py .; \ PYTHONPATH=. python test.py) python: can't open file 'test.py': [Errno 2] No such file or directory make[3]: [test_python] Error 2 (ignored) (mkdir -p test_tcl; cd test_tcl; \ ln -fs ../.libs/libgv_tcl.so libgv_tcl.so; \ ln -fs ../*.dot ../*.tcl .; \ /usr/bin/tclsh8.4 ./test.tcl) couldn't read file "./test.tcl": no such file or directory make[3]: [test_tcl] Error 1 (ignored) /bin/sh: ./test_perl: is a directory FAIL: test_perl /bin/sh: ./test_python: is a directory FAIL: test_python /bin/sh: ./test_tcl: is a directory FAIL: test_tcl =================== 3 of 3 tests failed =================== So tests fail, but hey, we compile :)
The test work fine in 2.8 (not in the tree). media-gfx, i believe this is all yours now.
Removing perl herd since the problem is in graphviz's tests at this point, not the perl support.
i got even more failures (media-gfx/graphviz-2.6-r1 [ +X +cairo* -dynagraph -static +tcltk ]): =================== 5 of 5 tests failed =================== If you want me to attach the output of the whole test-section let me know. Portage 2.0.54-r2 (default-linux/x86/2006.0, gcc-3.4.5, glibc-2.3.6-r3, 2.6.16-gentoo-r6 i686) ================================================================= System uname: 2.6.16-gentoo-r6 i686 AMD Athlon(tm) XP 2400+ Gentoo Base System version 1.6.14 dev-lang/python: 2.3.5-r2, 2.4.2 dev-python/pycrypto: [Not Present] dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O2 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig collision-protect distlocks sandbox sfperms strict test" GENTOO_MIRRORS="http://gentoo.inode.at/ " LANG="en_US.utf8" LC_ALL="en_US.utf8" LINGUAS="en de" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://192.168.0.1/gentoo-portage" USE="x86 3dnow 3dnowext X a52 aac aalib acpi alsa apm audiofile avi berkdb bitmap-fonts bonobo bzip2 cairo cdr cli crypt css cups curl dbus dri dts dvd dvdr dvdread eds emboss encode exif expat fam fbcon ffmpeg firefox flac foomaticdb fortran gd gdbm gif ginac glut gmp gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile hal icq idn imagemagick imlib ipv6 isdnlog java javascript jpeg jpeg2k junit lcms libg++ libwww mad matroska mikmod mime mmx mmxext mng motif mozsvg mp3 mpeg msn nautilus ncurses nls nptl nsplugin nvidia offensive ogg oggvorbis openal opengl pam pcre pdflib perl plotutils png posix pppd python quicktime readline real reflection ruby sdl session slang sockets speex spell spl sqlite sqlite3 sse ssl subtitles svg svga tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts udev unicode usb vcd vorbis win32codecs wma xine xml xml2 xmms xorg xv xvid zlib video_cards_nvidia linguas_en linguas_de userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTAGE_RSYNC_OPTS
Graphviz 2.8 works as advertised and is now in the tree (don't use FEATURES=test with older versions).