Bug#671044: freedink: FTBFS[!linux]: too many args to install-reloc
Sylvain
beuc at gnu.org
Tue May 1 20:13:44 UTC 2012
Hi Steven,
'install-reloc' indeed does nothing special in the case of
FreeDink+Linux, but it is run as part of the gnulib infrastructure.
(I see you understand the relocatable-prog module quite well, but I
post this link for other people to understand how it works:)
http://www.gnu.org/software/gnulib/manual/html_node/Supporting-Relocation.html#Supporting-Relocation
In the general case I guess that all systems using ELF and supporting
rpath can skip the wrapper as well, but let's hear from the gnulib
developers first :)
I suppose the patch requires a re-bootstrap?
Cheers!
Sylvain
On Tue, May 01, 2012 at 08:52:25PM +0100, Steven Chamberlain wrote:
> retitle 671044 freedink: FTBFS[!linux]: too many args to install-reloc
> tags 671044 + patch
> thanks
>
> Hi Sylvain,
>
> On 01/05/12 15:56, Sylvain wrote:
> > It seems that there's an issue with install-reloc:
>
> Yes there is, but what is its purpose anyway? For Linux builds it is
> not used so maybe it shouldn't be used either on kFreeBSD or Hurd?
>
> With the attached patch it builds just fine on kfreebsd-i386 and I think
> the change would also help fix this on hurd-*.
>
> Also attached is the output of 'objdump -p' for the two binaries; I
> don't see an RPATH or anything that would make them not be relocatable
> AFAIK.
>
> Regards,
> --
> Steven Chamberlain
> steven at pyro.eu.org
> Description: use_elf_origin_trick on non-Linux arches
> Avoids (wrongly?) using install-reloc on GNU/kFreeBSD and GNU/Hurd.
> Author: Steven Chamberlain <steven at pyro.eu.org>
> Bug-Debian: http://bugs.debian.org/671044
>
> --- freedink-1.08.20120427.orig/gnulib/m4/relocatable.m4 2012-04-27 12:48:56.000000000 +0100
> +++ freedink-1.08.20120427/gnulib/m4/relocatable.m4 2012-05-01 20:41:06.411344551 +0100
> @@ -41,7 +41,7 @@
> AC_CHECK_FUNCS([_NSGetExecutablePath])
> case "$host_os" in
> mingw*) is_noop=yes ;;
> - linux*) use_elf_origin_trick=yes ;;
> + linux*|gnu*|k*bsd*-gnu) use_elf_origin_trick=yes ;;
> esac
> if test $is_noop = yes; then
> RELOCATABLE_LDFLAGS=:
>
> freedink: file format elf32-i386-freebsd
>
> Program Header:
> PHDR off 0x00000034 vaddr 0x08048034 paddr 0x08048034 align 2**2
> filesz 0x00000100 memsz 0x00000100 flags r-x
> INTERP off 0x00000134 vaddr 0x08048134 paddr 0x08048134 align 2**0
> filesz 0x0000000d memsz 0x0000000d flags r--
> LOAD off 0x00000000 vaddr 0x08048000 paddr 0x08048000 align 2**12
> filesz 0x00041a68 memsz 0x00041a68 flags r-x
> LOAD off 0x00042000 vaddr 0x0808a000 paddr 0x0808a000 align 2**12
> filesz 0x0000073c memsz 0x00391004 flags rw-
> DYNAMIC off 0x0004200c vaddr 0x0808a00c paddr 0x0808a00c align 2**2
> filesz 0x00000128 memsz 0x00000128 flags rw-
> NOTE off 0x00000144 vaddr 0x08048144 paddr 0x08048144 align 2**2
> filesz 0x00000044 memsz 0x00000044 flags r--
> EH_FRAME off 0x00039eec vaddr 0x08081eec paddr 0x08081eec align 2**2
> filesz 0x00001444 memsz 0x00001444 flags r--
> STACK off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**2
> filesz 0x00000000 memsz 0x00000000 flags rw-
>
> Dynamic Section:
> NEEDED libSDL_mixer-1.2.so.0
> NEEDED libSDL_image-1.2.so.0
> NEEDED libSDL_ttf-2.0.so.0
> NEEDED libSDL_gfx.so.13
> NEEDED libSDL-1.2.so.0
> NEEDED libfontconfig.so.1
> NEEDED libm.so.1
> NEEDED libc.so.0.1
> INIT 0x0804a99c
> FINI 0x0807bb9c
> INIT_ARRAY 0x0808a000
> INIT_ARRAYSZ 0x00000004
> FINI_ARRAY 0x0808a004
> FINI_ARRAYSZ 0x00000004
> HASH 0x08048188
> GNU_HASH 0x08048808
> STRTAB 0x080495f8
> SYMTAB 0x08048868
> STRSZ 0x00000b2f
> SYMENT 0x00000010
> DEBUG 0x00000000
> PLTGOT 0x0808a13c
> PLTRELSZ 0x00000658
> PLTREL 0x00000011
> JMPREL 0x0804a344
> REL 0x0804a31c
> RELSZ 0x00000028
> RELENT 0x00000008
> VERNEED 0x0804a2dc
> VERNEEDNUM 0x00000002
> VERSYM 0x0804a128
>
> Version References:
> required from libm.so.1:
> 0x0d696913 0x00 03 GLIBC_2.3
> required from libc.so.0.1:
> 0x0d696913 0x00 02 GLIBC_2.3
>
>
> freedinkedit: file format elf32-i386-freebsd
>
> Program Header:
> PHDR off 0x00000034 vaddr 0x08048034 paddr 0x08048034 align 2**2
> filesz 0x00000100 memsz 0x00000100 flags r-x
> INTERP off 0x00000134 vaddr 0x08048134 paddr 0x08048134 align 2**0
> filesz 0x0000000d memsz 0x0000000d flags r--
> LOAD off 0x00000000 vaddr 0x08048000 paddr 0x08048000 align 2**12
> filesz 0x000411bc memsz 0x000411bc flags r-x
> LOAD off 0x000411bc vaddr 0x0808a1bc paddr 0x0808a1bc align 2**12
> filesz 0x00000768 memsz 0x00393754 flags rw-
> DYNAMIC off 0x000411c8 vaddr 0x0808a1c8 paddr 0x0808a1c8 align 2**2
> filesz 0x00000128 memsz 0x00000128 flags rw-
> NOTE off 0x00000144 vaddr 0x08048144 paddr 0x08048144 align 2**2
> filesz 0x00000044 memsz 0x00000044 flags r--
> EH_FRAME off 0x00039d8c vaddr 0x08081d8c paddr 0x08081d8c align 2**2
> filesz 0x00001354 memsz 0x00001354 flags r--
> STACK off 0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**2
> filesz 0x00000000 memsz 0x00000000 flags rw-
>
> Dynamic Section:
> NEEDED libSDL_mixer-1.2.so.0
> NEEDED libSDL_image-1.2.so.0
> NEEDED libSDL_ttf-2.0.so.0
> NEEDED libSDL_gfx.so.13
> NEEDED libSDL-1.2.so.0
> NEEDED libfontconfig.so.1
> NEEDED libm.so.1
> NEEDED libc.so.0.1
> INIT 0x0804a9ac
> FINI 0x0807a7fc
> INIT_ARRAY 0x0808a1bc
> INIT_ARRAYSZ 0x00000004
> FINI_ARRAY 0x0808a1c0
> FINI_ARRAYSZ 0x00000004
> HASH 0x08048188
> GNU_HASH 0x08048808
> STRTAB 0x080495f4
> SYMTAB 0x08048864
> STRSZ 0x00000b3d
> SYMENT 0x00000010
> DEBUG 0x00000000
> PLTGOT 0x0808a2f8
> PLTRELSZ 0x00000660
> PLTREL 0x00000011
> JMPREL 0x0804a34c
> REL 0x0804a324
> RELSZ 0x00000028
> RELENT 0x00000008
> VERNEED 0x0804a2e4
> VERNEEDNUM 0x00000002
> VERSYM 0x0804a132
>
> Version References:
> required from libm.so.1:
> 0x0d696913 0x00 03 GLIBC_2.3
> required from libc.so.0.1:
> 0x0d696913 0x00 02 GLIBC_2.3
>
More information about the Pkg-games-devel
mailing list