This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

testroot.pristine creation falls over copying dynamic linker


My attempts to test MIPS for glibc 2.30 have fallen over, for most ABIs, 
with errors of the form:

for dso in 
`/scratch/jmyers/glibc/src/glibc-mainline/scripts/cross-test-ssh.sh --ssh 
/scratch/jmyers/glibc/mbs/q/qemu-ssh qemu env LD_TRACE_LOADED_OBJECTS=1  \
        
/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/elf/ld.so.1 
--library-path 
/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/math:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/elf:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/dlfcn:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/nss:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/nis:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/rt:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/resolv:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/mathvec:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/support:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/crypt:/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/nptl 
\
        
/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/testroot.pristine/bin/sh 
\
        | grep / | sed 's/^[^/]*//' | sed 's/ .*//'` ;\
  do \
    test -d `dirname 
/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/testroot.pristine$dso` 
|| \
      mkdir -p `dirname 
/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/testroot.pristine$dso` 
;\
    /scratch/jmyers/glibc/src/glibc-mainline/scripts/cross-test-ssh.sh 
--ssh /scratch/jmyers/glibc/mbs/q/qemu-ssh qemu cp $dso 
/scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/testroot.pristine$dso 
;\
  done
cp: cannot stat `/lib32/ld.so.1': No such file or directory

The LD_TRACE_LOADED_OBJECTS=1 command in question produces output of the 
form:

        libc.so.6 => /scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/libc.so.6 (0x772dd000)
        /lib32/ld.so.1 => /scratch/jmyers/glibc/mbs/obj/glibc-8-0-mips64-linux-gnu-x86_64-linux-gnu/default/elf/ld.so.1 (0x7747b000)

where indeed /lib32/ld.so.1 does not exist - the root filesystem only has 
libraries for one ABI, and this is testing glibc for another ABI.

If the LD_TRACE_LOADED_OBJECTS=1 output is indeed meant to include a full 
canonical path to the dynamic linker like that, the testroot.pristine 
creation must not then try to copy that path, which may not actually exist 
- it must only copy the path on the right hand side of =>.

-- 
Joseph S. Myers
joseph@codesourcery.com

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]