Skip to Content.
Sympa Menu

sm-sorcery-bugs - [SM-Sorcery-Bugs] [Bug 12784] stage root rpath linking in stage area

sm-sorcery-bugs AT lists.ibiblio.org

Subject: Bugs for Sorcery are reported here

List archive

Chronological Thread  
  • From: bugzilla-daemon AT bugs.sourcemage.org
  • To: sm-sorcery-bugs AT lists.ibiblio.org
  • Subject: [SM-Sorcery-Bugs] [Bug 12784] stage root rpath linking in stage area
  • Date: 23 Jul 2006 18:15:27 -0000

http://bugs.sourcemage.org/show_bug.cgi?id=12784





------- Additional Comments From dmlb2000 AT gmail.com 2006-07-23 13:15 -------
Okay in the example of the graphviz spell the INSTALL file is as follows...
=================================================
make DESTDIR=$INSTALL_ROOT/ install &&

# create configuration file for plug-ins
dot -c
=================================================

The error occures on the `dot -c` command when the linker can't find some of
the
recently installed graphviz libraries installed to /usr/lib/graphviz that were
translated to $STAGE_DIRECTORY/TRANSL/usr/lib/graphviz

# ldd /usr/bin/dot
linux-gate.so.1 => (0xffffe000)
libgvc.so.2 => /usr/lib/graphviz/libgvc.so.2 (0xb7f51000)
libgraph.so.2 => /usr/lib/graphviz/libgraph.so.2 (0xb7f48000)
libcdt.so.2 => /usr/lib/graphviz/libcdt.so.2 (0xb7f44000)
libpathplan.so.2 => /usr/lib/graphviz/libpathplan.so.2 (0xb7f3e000)
libgvgd.so.2 => /usr/lib/graphviz/libgvgd.so.2 (0xb7ef4000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb7eb9000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7e63000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb7e4a000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb7e2e000)
libm.so.6 => /lib/libm.so.6 (0xb7e0d000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb7df2000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7de2000)
libltdl.so.3 => /usr/lib/libltdl.so.3 (0xb7ddb000)
libdl.so.2 => /lib/libdl.so.2 (0xb7dd7000)
libc.so.6 => /lib/libc.so.6 (0xb7cee000)
/lib/ld-linux.so.2 (0xb7fb0000)

the reason the linker doesn't find the libraries is because it doesn't have a
recursive search and the reason is works without staging is because when dot
was
linked it used -rpath to force searching /usr/lib/graphviz

to fix this we would have to add $STAGE_DIRECTORY/TRANSL/usr/lib/graphiz to
the
LD_RUN_PATH so that the linker can find the new libraries and run dot.
However,
from a sorcery point of view we have control both before and after INSTALL but
not in between the make install and the call to dot. Since, most-likely we'd
be
putting the fix before INSTALL, how does sorcery know from spell to spell
which
directories to add to LD_RUN_PATH so that binaries installed can find the
libraries it needs to run?

--
Configure bugmail: http://bugs.sourcemage.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.




Archive powered by MHonArc 2.6.24.

Top of Page