Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 188120 - media-gfx/graphviz-2.12 fails os OSX
Summary: media-gfx/graphviz-2.12 fails os OSX
Status: RESOLVED FIXED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Other (show other bugs)
Hardware: x86 OS X
: High normal
Assignee: Gentoo non-Linux Team
URL:
Whiteboard:
Keywords:
Depends on: 192606
Blocks:
  Show dependency tree
 
Reported: 2007-08-08 15:12 UTC by Bernhard
Modified: 2008-07-21 14:46 UTC (History)
1 user (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 Bernhard 2007-08-08 15:12:26 UTC
Attempting to emerge graphviz on OS X (gentoo-alt prefix) leads to the following error. Some part of the script attempts to move and remove dynamic library files using the wrong naming convention (.so instead of .dylib). The .dylib files exist, the .so files do not.

(cd /gentoo/var/tmp/portage/media-gfx/graphviz-2.12/image//gentoo/usr/lib/ruby/site_ruby/1.8/i686-darwin8 && { ln -s -f libgv_ruby.0.0.0.dylib libgv_ruby.dylib || { rm -f libgv_ruby.dylib && ln -s libgv_ruby.0.0.0.dylib libgv_ruby.dylib; }; })
/gentoo/usr/bin/install -c .libs/libgv_ruby.lai /gentoo/var/tmp/portage/media-gfx/graphviz-2.12/image//gentoo/usr/lib/ruby/site_ruby/1.8/i686-darwin8/libgv_ruby.la
libtool: install: warning: remember to run `libtool --finish /gentoo/usr/lib/ruby/site_ruby/1.8/i686-darwin8'
make  install-data-hook
make[4]: Entering directory `/gentoo/var/tmp/portage/media-gfx/graphviz-2.12/work/graphviz-2.12/tclpkg/gv'
(cd /gentoo/var/tmp/portage/media-gfx/graphviz-2.12/image//gentoo/usr/lib/perl5/vendor_perl/5.8.8/darwin-2level;   rm -f gv.so libgv_perl.so libgv_perl.so.0 libgv_perl.la;  mv libgv_perl.so.0.0.0 gv.so;)
mv: cannot stat `libgv_perl.so.0.0.0': No such file or directory
make[4]: *** [install-data-hook] Error 1
make[4]: Leaving directory `/gentoo/var/tmp/portage/media-gfx/graphviz-2.12/work/graphviz-2.12/tclpkg/gv'
make[3]: *** [install-data-am] Error 2
make[3]: Leaving directory `/gentoo/var/tmp/portage/media-gfx/graphviz-2.12/work/graphviz-2.12/tclpkg/gv'
make[2]: *** [install-am] Error 2
make[2]: Leaving directory `/gentoo/var/tmp/portage/media-gfx/graphviz-2.12/work/graphviz-2.12/tclpkg/gv'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/gentoo/var/tmp/portage/media-gfx/graphviz-2.12/work/graphviz-2.12/tclpkg'
make: *** [install-recursive] Error 1
 * 
 * ERROR: media-gfx/graphviz-2.12 failed.
 * Call stack:
 *   ebuild.sh, line 1595:   Called dyn_install
 *   ebuild.sh, line 1030:   Called qa_call 'src_install'
 *   ebuild.sh, line 44:   Called src_install
 *   graphviz-2.12.ebuild, line 178:   Called die
 * 
 * emake install failed
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/gentoo/var/tmp/portage/media-gfx/graphviz-2.12/temp/build.log'.
 * 


Reproducible: Always

Steps to Reproduce:
1. emerge graphviz
Comment 1 Fabian Groffen gentoo-dev 2007-08-08 20:05:47 UTC
Thanks, this has to do with building one of the extentions (truggered by USE flags).  We're looking into how to fix this the best way.
Comment 2 Bernhard 2007-08-09 06:52:05 UTC
More info:

The bug is indeed related to the use of the "perl" USE-flag. An analogous error is produced for the "ruby" flag. Emerging with neither of these two flags works.

Cheers,

Burnce
Comment 3 Elias Pipping (RETIRED) gentoo-dev 2007-10-08 19:47:58 UTC
This issue has been solved upstream in v2.14.1.

Note that USE=python will not work even with v2.14.1, because there's no shared library for -lpython2.5 to link against.


@grobian: please make this bug depend on bug #194749, #192606
Comment 4 Elias Pipping (RETIRED) gentoo-dev 2007-10-08 19:56:43 UTC
graphviz 2.14.1 will still need a minor patch, because one ends up with broken symlinks:

perl/gv.so -> libgv_perl.so
python/_gv.so -> libgv_python.so
ruby/gv.so -> libgv_ruby.so
tcl/gv.so -> libgv_tcl.so

the rest is fine and the above might not even matter, though:

perl/gv.pm
perl/gv.so -> libgv_perl.so
perl/libgv_perl.0.0.0.dylib
perl/libgv_perl.0.dylib -> libgv_perl.0.0.0.dylib
perl/libgv_perl.dylib -> libgv_perl.0.0.0.dylib
perl/libgv_perl.la
Comment 5 Elias Pipping (RETIRED) gentoo-dev 2007-10-10 03:00:04 UTC
I've committed a fix in r11046. [1]

 * python bindings still don't work{1}
 * i cannot test the tcl bindings because tcl does not compile{2}

with the patch applied, perl's dir (and it's basically the same for ruby) looks like this:

perl5/vendor_perl/5.8.8/darwin-2level/
gv.dylib -> libgv_perl.dylib
gv.pm
libgv_perl.0.0.0.dylib
libgv_perl.0.dylib -> libgv_perl.0.0.0.dylib
libgv_perl.dylib -> libgv_perl.0.0.0.dylib
libgv_perl.la

all of the dynamic libraries are linked against this file:

${EPREFIX}usr/lib/perl5/vendor_perl/5.8.8/darwin-2level/libgv_perl.0.dylib

That's why doing exactly what the original patch does, as you can see here[2] is not a good idea:

> rm -f gv.so libgv_perl.so libgv_perl.so.0 libgv_perl.la;  mv libgv_perl.so.0.0.0 gv.so

we could make that

> rm -f gv.so libgv_perl.dylib libgv_perl.0.dylib libgv_perl.la;  mv libgv_perl.0.0.0.dylib gv.dylib

but:
 * we'd still link against libgv_perl.0.dylib - removing it is therefore not a good idea
 * why don't we keep the other dylibs around
 * why don't we keep the .la file around? (looks perfectly fine although i might be wrong)
 * should the gv.dylib be there at all? do we need it? does it need to go by the name gv.so for some reason?

I've not remove the package.use.mask for perl and ruby because i'm not sure if they really *work* now - so both testing and answers are highly appreciated.

@grobian: this bug does not depend on bug #194749, sorry

{1} ld naturally doesn't find anything for -lpython2.5 because of bug #192606
{2} I should file a bug about that

[1] http://overlays.gentoo.org/proj/alt/changeset/11046
[2] http://overlays.gentoo.org/proj/alt/browser/trunk/prefix-overlay/media-gfx/graphviz/files/graphviz-2.12-bindings-prefix.patch?rev=11046
Comment 6 Fabian Groffen gentoo-dev 2007-10-11 13:22:06 UTC
per pipping's comment
Comment 7 Fabian Groffen gentoo-dev 2007-11-09 15:14:40 UTC
 * we'd still link against libgv_perl.0.dylib - removing it is therefore not a
good idea
 * why don't we keep the other dylibs around
 * why don't we keep the .la file around? (looks perfectly fine although i
might be wrong)
 * should the gv.dylib be there at all? do we need it? does it need to go by


I don't see the ebuild doing any removing of dylibs, does it?
Comment 8 Elias Pipping (RETIRED) gentoo-dev 2007-11-09 16:52:45 UTC
not the ebuild but the makefile/this patch[1] removes dylibs.


[1] http://overlays.gentoo.org/svn/proj/alt/trunk/prefix-overlay/media-gfx/graphviz/files/graphviz-2.12-bindings-prefix.patch
Comment 9 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2008-05-12 18:39:57 UTC
Can someone running OSX please let us know the status of this package? If no comment is, say..2 weeks, I'll assume this package is working "good enough" (based on the comments) and resolve. Thanks.
Comment 10 Elias Pipping (RETIRED) gentoo-dev 2008-05-12 18:48:46 UTC
I think the bug should stay open even if nobody says anything (which is what I expect to happen) -- just my opinion of course.
Comment 11 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2008-07-21 14:46:34 UTC
(In reply to comment #3)
> This issue has been solved upstream in v2.14.1.

v2.20.2 is in the tree now.

(In reply to comment #10)
> I think the bug should stay open even if nobody says anything (which is what I
> expect to happen) -- just my opinion of course.

No one has had any comments about borkdness for 8 months. Assumed this bug is resolved.

Please file a new bug if there is any additional problems.