Re: The broken libjpeg-6b is in RH 5.1
On 27 May 1998, Michael Alan Dorman wrote:
> jdassen@wi.leidenuniv.nl writes:
>
> > - Recent versions of libtool compile everything with an explicit -rpath
> > setting. Binaries built with it cannot be run on systems that have the
> > same libraries, but in different locations.
> > An example of this problematic behaviour is with Red Hat's TriTeal CDE
> > 1.2 on Debian "hamm" systems: the CDE is libc5, and was compiled -rpath
> > /usr/X11R6/lib . Thus, on a Debian "hamm" system, ld.so only looks for
> > the X libraries there, and thinks it finds them, but they are the wrong
> > ones: on Debian "hamm" (and thus, Debian 2.0), /usr/X11R6/lib contains
> > X libraries for use with libc6. The result of this is that many CDE
> > applications dump core and require editing of their binaries (replacing
> > the RPATH in the Dynamic Section (see objdump --all-headers) with NULLs)
> > before they can be run successfully.
>
> Could someone who is sufficiently knowledgable (you?) build a tool to
> do this automatically that could be run from in debian/rules---so that
> when people run lintian on their packages, and it bitches about the
> rpath, people can add a couple of lines like:
>
> find -type f -name '*.so.*' | xargs -r remove-rpath
> find -perm +x | xargs -r remove-rpath
>
> to debian/rules and have the problem zapped?
Do you mean a script like this?
---cut-here---
#!/usr/bin/perl -w
# Open file
open IN, "$ARGV[0]" or die "can't find $ARGV[0]: $!";
# Read it in one slurp
select IN;
undef $/;
select STDOUT;
$file=<IN>;
close IN;
# Remove this string
$count=$file=~s!/usr/X11R6/lib\0!\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0!g;
print "Replaced: $count occurences in $ARGV[0]\n";
# Write the file
open OUT, ">$ARGV[0].out" or die "can't write $ARGV[0].out: $!";
print OUT $file;
close OUT;
---cut-here---
This script takes one filename and fixes that file. The output is written
to another file, with .out appended to the filename.
I don't remember who wrote it. It was posted to the Debian mailing lists
several times when the X libraries had just moved to libc6 and some
programs (among which fvwm2) were compiled with -rpath.
Remco
--
To UNSUBSCRIBE, email to debian-devel-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Reply to: