[fedora-arm] Firefox dependency

Rabeeh Khoury rabeeh at marvell.com
Wed Oct 3 00:11:39 UTC 2007


BTW - shouldn't this problem be very basic since every rpmbuild the
find-requires script is called?


> -----Original Message-----
> From: fedora-arm-bounces at redhat.com
[mailto:fedora-arm-bounces at redhat.com]
> On Behalf Of Rabeeh Khoury
> Sent: Wednesday, October 03, 2007 2:06 AM
> To: fedora-arm at redhat.com
> Subject: [fedora-arm] Firefox dependency
> 
> Hi,
> 
> I had an issue when installing Firefox that it strangely required
> ld-linux.so.3(4000002:) and other strange dependencies.
> 
> After digging inside I found that the problem seem to be an ARM
specific
> problem.
> In the FireFox build there is a call for the RPM script find-requires
> (part of the RPM package).
> This script goes over all binaries and extracts the libraries (and
other
> things) from each binary using the 'objdump -p' command.
> 
> Doing so for an example binary provides the following output -
> 
> main:     file format elf32-littlearm
> 
> Program Header:
> 0x70000001 off    0x00000d5c vaddr 0x00008d5c paddr 0x00008d5c align
> 2**2
>          filesz 0x00000018 memsz 0x00000018 flags r--
> 
> ........
> Version References:
>   required from libgcc_s.so.1:
>     0x0b792655 0x00 03 GCC_3.5
>   required from libc.so.6:
>     0x0d696914 0x00 02 GLIBC_2.4
> private flags = 4000002: [Version4 EABI] [has entry point]
> 
> And the problem is actually in the "private flags" line where the
script
> mistakenly thinks its part of the dependency.
> 
> I fixed that temporarily in the find-requires file and I'm now
> rebuilding firefox --> tomorrow I'll let you know if it finally fixed
> this problem.
> The patch for fixing find-requires is -
> 
> --- /usr/lib/rpm/redhat/find-requires.orig      2007-10-03
> 02:58:19.000000000 +0200
> +++ /usr/lib/rpm/redhat/find-requires   2007-10-03 03:13:14.000000000
> +0200
> @@ -95,7 +95,7 @@
>      [ -r $f ] || continue
>      lib64=`if file -L $f 2>/dev/null | \
>         grep "ELF 64-bit" >/dev/null; then echo "$mark64"; fi`
> -    $OBJDUMP -p $f | awk 'BEGIN { START=0; LIBNAME="";
> needed='$needed'; }
> +    $OBJDUMP -p $f | grep -v "private flags =" | awk 'BEGIN {
START=0;
> LIBNAME=""; needed='$needed'; }
>         /^$/ { START=0; }
>         /^Dynamic Section:$/ { START=1; }
>         (START==1) && /NEEDED/ {
> 
> Regards,
> Rabeeh
> 
> 
> 
> _______________________________________________
> fedora-arm mailing list
> fedora-arm at redhat.com
> https://www.redhat.com/mailman/listinfo/fedora-arm




More information about the arm mailing list