mailing list of musl libc
 help / color / mirror / code / Atom feed
* problems with dynamic linking since 0.9.1
@ 2013-08-13 10:39 Jens
  2013-08-13 11:07 ` Szabolcs Nagy
  2013-08-15  3:29 ` Rob Landley
  0 siblings, 2 replies; 22+ messages in thread
From: Jens @ 2013-08-13 10:39 UTC (permalink / raw)
  To: musl


Hello!

Dynamic linking with musl has stopped working for me since musl 0.9.1.
I havent tested all versions but 0.9.6 and 0.9.12 does not work.

Im still using that strange uclibc environment where gcc is itself a 
wrapper that calls rawgcc.

Info for 0.9.1 and 0.9.12 below.

Any ideas or pointers welcome.

Regards,
Jens

0.9.1 (working):
bash-4.1# musl-gcc -v t.o
Using built-in specs.
Reading specs from /opt/musl/lib/musl-gcc.specs
rename spec cpp_options to old_cpp_options
rename spec link to old_link
Target: x86_64-unknown-linux
Configured with: 
/home/landley/firmware-0.9.6/build/temp-x86_64/gcc-core/configure 
--prefix=/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr 
--disable-multilib --build=x86_64-walrus-linux --host=x86_64-unknown-linux 
--target=x86_64-unknown-linux --enable-long-long --enable-c99 
--enable-shared --enable-threads=posix --enable-__cxa_atexit --disable-nls 
--enable-languages=c,c++ --disable-libstdcxx-pch --enable-sjlj-exceptions 
--program-prefix=
Thread model: posix
gcc version 4.1.2
  /usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/collect2 
--eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 
-dynamic-linker /lib/ld-musl-x86_64.so.1 -nostdlib /opt/musl/lib/crt1.o 
/opt/musl/lib/crti.o /usr/gcc/lib/crtbegin.o -L/opt/musl/lib t.o 
/usr/gcc/lib/libgcc.a /usr/gcc/lib/libgcc_eh.a -lc /usr/gcc/lib/libgcc.a 
/usr/gcc/lib/libgcc_eh.a /usr/gcc/lib/crtend.o /opt/musl/lib/crtn.o

# cat /opt/musl/lib/musl-gcc.specs
%rename cpp_options old_cpp_options

*cpp_options:
-nostdinc -isystem /opt/musl/include %(old_cpp_options)

*cc1:
%(cc1_cpu) -nostdinc -isystem /opt/musl/include

*link_libgcc:
-L/opt/musl/lib

*libgcc:
/usr/gcc/lib/libgcc.a%s %:if-exists(/usr/gcc/lib/libgcc_eh.a%s)

*startfile:
%{!shared: /opt/musl/lib/%{pie:S}crt1.o} /opt/musl/lib/crti.o 
%{shared|pie:crtbeginS.o%s;:/usr/gcc/lib/crtbegin.o%s}

*endfile:
%{shared|pie:crtendS.o%s;:/usr/gcc/lib/crtend.o%s} /opt/musl/lib/crtn.o

%rename link old_link

*link:
%(old_link) -dynamic-linker /lib/ld-musl-x86_64.so.1 -nostdlib

*esp_link:


*esp_options:


*esp_cpp_options:

0.9.12 (non working):
bash-4.1# musl-gcc -v t.o
Using built-in specs.
Reading specs from /opt/musl/lib/musl-gcc.specs
rename spec cpp_options to old_cpp_options
Target: x86_64-unknown-linux
Configured with: 
/home/landley/firmware-0.9.6/build/temp-x86_64/gcc-core/configure 
--prefix=/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr 
--disable-multilib --build=x86_64-walrus-linux --host=x86_64-unknown-linux 
--target=x86_64-unknown-linux --enable-long-long --enable-c99 
--enable-shared --enable-threads=posix --enable-__cxa_atexit --disable-nls 
--enable-languages=c,c++ --disable-libstdcxx-pch --enable-sjlj-exceptions 
--program-prefix=
Thread model: posix
gcc version 4.1.2
  /usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/collect2 
-dynamic-linker /lib/ld-musl-x86_64.so.1 -nostdlib /opt/musl/lib/crt1.o 
/opt/musl/lib/crti.o /usr/gcc/lib/crtbegin.o -L/opt/musl/lib -L /lib/. t.o 
/usr/gcc/lib/libgcc.a /usr/gcc/lib/libgcc_eh.a -lc /usr/gcc/lib/libgcc.a 
/usr/gcc/lib/libgcc_eh.a /usr/gcc/lib/crtend.o /opt/musl/lib/crtn.o
/opt/musl/lib/libc.so: file not recognized: File format not recognized
collect2: ld returned 1 exit status

# cat /opt/musl/lib/musl-gcc.specs
%rename cpp_options old_cpp_options

*cpp_options:
-nostdinc -isystem /opt/musl/include -isystem include%s %(old_cpp_options)

*cc1:
%(cc1_cpu) -nostdinc -isystem /opt/musl/include -isystem include%s

*link_libgcc:
-L/opt/musl/lib -L .%s

*libgcc:
/usr/gcc/lib/libgcc.a%s %:if-exists(/usr/gcc/lib/libgcc_eh.a%s)

*startfile:
%{!shared: /opt/musl/lib/%{pie:S}crt1.o} /opt/musl/lib/crti.o 
%{shared|pie:crtbeginS.o%s;:/usr/gcc/lib/crtbegin.o%s}

*endfile:
%{shared|pie:crtendS.o%s;:/usr/gcc/lib/crtend.o%s} /opt/musl/lib/crtn.o

*link:
-dynamic-linker /lib/ld-musl-x86_64.so.1 -nostdlib %{shared:-shared} 
%{static:-static} %{rdynamic:-export-dynamic}

*esp_link:


*esp_options:


*esp_cpp_options:




^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 10:39 problems with dynamic linking since 0.9.1 Jens
@ 2013-08-13 11:07 ` Szabolcs Nagy
  2013-08-13 11:18   ` Jens
  2013-08-15  3:29 ` Rob Landley
  1 sibling, 1 reply; 22+ messages in thread
From: Szabolcs Nagy @ 2013-08-13 11:07 UTC (permalink / raw)
  To: musl

* Jens <jensl@laas.mine.nu> [2013-08-13 12:39:52 +0200]:
> Dynamic linking with musl has stopped working for me since musl 0.9.1.
> I havent tested all versions but 0.9.6 and 0.9.12 does not work.
> 

you didn't tell us the problem

at least show a crashing dynamic linked executable
with straced loader and musl ldd output



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 11:07 ` Szabolcs Nagy
@ 2013-08-13 11:18   ` Jens
  2013-08-13 14:53     ` Szabolcs Nagy
  0 siblings, 1 reply; 22+ messages in thread
From: Jens @ 2013-08-13 11:18 UTC (permalink / raw)
  To: musl



On Tue, 13 Aug 2013, Szabolcs Nagy wrote:

> * Jens <jensl@laas.mine.nu> [2013-08-13 12:39:52 +0200]:
>> Dynamic linking with musl has stopped working for me since musl 0.9.1.
>> I havent tested all versions but 0.9.6 and 0.9.12 does not work.
>>
>
> you didn't tell us the problem
>
> at least show a crashing dynamic linked executable
> with straced loader and musl ldd output

Sorry. Its actually linking the binary that doesnt work.

bash-4.1# musl-gcc -c t.c
bash-4.1# musl-gcc t.o
/opt/musl/lib/libc.so: file not recognized: File format not recognized
collect2: ld returned 1 exit status

bash-4.1# cat /bin/musl-gcc
#!/bin/sh
exec ${REALGCC:-rawgcc} "$@" -specs "/opt/musl/lib/musl-gcc.specs"

Thanks!
Jens


>
>


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 11:18   ` Jens
@ 2013-08-13 14:53     ` Szabolcs Nagy
  2013-08-13 16:00       ` Rich Felker
                         ` (2 more replies)
  0 siblings, 3 replies; 22+ messages in thread
From: Szabolcs Nagy @ 2013-08-13 14:53 UTC (permalink / raw)
  To: musl

* Jens <jensl@laas.mine.nu> [2013-08-13 13:18:27 +0200]:
> On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
> >
> >you didn't tell us the problem
> >
> >at least show a crashing dynamic linked executable
> >with straced loader and musl ldd output
> 
> Sorry. Its actually linking the binary that doesnt work.
> 

ah ok i did not see that

i'd check libc.so if there is some obvious error
ld should be able to handle it
(eg file libc.so, readelf -a libc.so, nm -D libc.so, or just ./libc.so)

since you use landley's weird toolchain it may be a
problem with the old binutils

> bash-4.1# musl-gcc -c t.c
> bash-4.1# musl-gcc t.o
> /opt/musl/lib/libc.so: file not recognized: File format not recognized
> collect2: ld returned 1 exit status


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 14:53     ` Szabolcs Nagy
@ 2013-08-13 16:00       ` Rich Felker
  2013-08-15  3:14         ` Rob Landley
  2013-08-13 17:14       ` Jens
  2013-08-15  2:17       ` Rob Landley
  2 siblings, 1 reply; 22+ messages in thread
From: Rich Felker @ 2013-08-13 16:00 UTC (permalink / raw)
  To: musl

On Tue, Aug 13, 2013 at 04:53:00PM +0200, Szabolcs Nagy wrote:
> * Jens <jensl@laas.mine.nu> [2013-08-13 13:18:27 +0200]:
> > On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
> > >
> > >you didn't tell us the problem
> > >
> > >at least show a crashing dynamic linked executable
> > >with straced loader and musl ldd output
> > 
> > Sorry. Its actually linking the binary that doesnt work.
> > 
> 
> ah ok i did not see that
> 
> i'd check libc.so if there is some obvious error
> ld should be able to handle it
> (eg file libc.so, readelf -a libc.so, nm -D libc.so, or just ./libc.so)
> 
> since you use landley's weird toolchain it may be a
> problem with the old binutils

Indeed, that toolchain is probably already using its own gcc wrapper
around the real gcc located at a different path. Neither wrapper is
sufficiently transparent to allow another wrapper around it to
function 100% correctly, so I would guess this is your problem. See if
you can find the location of the real gcc binary and have musl-gcc run
that, or perhaps just get a compiler from the musl-cross package or
compile your own toolchain.

Rich


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 14:53     ` Szabolcs Nagy
  2013-08-13 16:00       ` Rich Felker
@ 2013-08-13 17:14       ` Jens
  2013-08-13 18:03         ` Rich Felker
  2013-08-15  3:43         ` Rob Landley
  2013-08-15  2:17       ` Rob Landley
  2 siblings, 2 replies; 22+ messages in thread
From: Jens @ 2013-08-13 17:14 UTC (permalink / raw)
  To: musl


On Tue, 13 Aug 2013, Szabolcs Nagy wrote:

> * Jens <jensl@laas.mine.nu> [2013-08-13 13:18:27 +0200]:
>> On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
>>>
>>> you didn't tell us the problem
>>>
>>> at least show a crashing dynamic linked executable
>>> with straced loader and musl ldd output
>>
>> Sorry. Its actually linking the binary that doesnt work.
>>
>
> ah ok i did not see that
>
> i'd check libc.so if there is some obvious error
> ld should be able to handle it
> (eg file libc.so, readelf -a libc.so, nm -D libc.so, or just ./libc.so)
>
> since you use landley's weird toolchain it may be a
> problem with the old binutils

Thanks! You nailed it in one. If I use newer binutils it works.

(In response to the wrapper problem, I let REALGCC point to the real gcc 
and not the wrapper).

Thanks again,
Jens

>
>> bash-4.1# musl-gcc -c t.c
>> bash-4.1# musl-gcc t.o
>> /opt/musl/lib/libc.so: file not recognized: File format not recognized
>> collect2: ld returned 1 exit status
>


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 17:14       ` Jens
@ 2013-08-13 18:03         ` Rich Felker
  2013-08-14  9:06           ` Jens
  2013-08-15  3:43         ` Rob Landley
  1 sibling, 1 reply; 22+ messages in thread
From: Rich Felker @ 2013-08-13 18:03 UTC (permalink / raw)
  To: musl

On Tue, Aug 13, 2013 at 07:14:42PM +0200, Jens wrote:
> 
> On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
> 
> >* Jens <jensl@laas.mine.nu> [2013-08-13 13:18:27 +0200]:
> >>On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
> >>>
> >>>you didn't tell us the problem
> >>>
> >>>at least show a crashing dynamic linked executable
> >>>with straced loader and musl ldd output
> >>
> >>Sorry. Its actually linking the binary that doesnt work.
> >>
> >
> >ah ok i did not see that
> >
> >i'd check libc.so if there is some obvious error
> >ld should be able to handle it
> >(eg file libc.so, readelf -a libc.so, nm -D libc.so, or just ./libc.so)
> >
> >since you use landley's weird toolchain it may be a
> >problem with the old binutils
> 
> Thanks! You nailed it in one. If I use newer binutils it works.
> 
> (In response to the wrapper problem, I let REALGCC point to the real
> gcc and not the wrapper).
> 
> Thanks again,
> Jens
> 
> >
> >>bash-4.1# musl-gcc -c t.c
> >>bash-4.1# musl-gcc t.o
> >>/opt/musl/lib/libc.so: file not recognized: File format not recognized
> >>collect2: ld returned 1 exit status
> >

It would be nice to get to the bottom of this, still. It's not my
intent to require new binutils for linking against musl. Any idea why
it might have been failing? Are there verbosity level options to ld
that might help track this down?

By the way, how old were those binutils? I saw "firmware Linux"
mentioned, which was the predecessor of Aboriginal, so unless that's
just still landley's dir name, maybe these are a lot older than I
thought..

Rich


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 18:03         ` Rich Felker
@ 2013-08-14  9:06           ` Jens
  2013-08-14 14:27             ` Rich Felker
  0 siblings, 1 reply; 22+ messages in thread
From: Jens @ 2013-08-14  9:06 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: TEXT/PLAIN, Size: 1725 bytes --]


>>> ld should be able to handle it (eg file libc.so, readelf -a libc.so, 
>>> nm -D libc.so, or just ./libc.so)
>>>
>>> since you use landley's weird toolchain it may be a
>>> problem with the old binutils
>>
>> Thanks! You nailed it in one. If I use newer binutils it works.
>>
>> (In response to the wrapper problem, I let REALGCC point to the real
>> gcc and not the wrapper).
>>
>> Thanks again,
>> Jens
>>
>>>
>>>> bash-4.1# musl-gcc -c t.c
>>>> bash-4.1# musl-gcc t.o
>>>> /opt/musl/lib/libc.so: file not recognized: File format not recognized
>>>> collect2: ld returned 1 exit status
>>>
>
> It would be nice to get to the bottom of this, still. It's not my
> intent to require new binutils for linking against musl. Any idea why
> it might have been failing? Are there verbosity level options to ld
> that might help track this down?

strace attached as trace.txt

bash-4.1# strace -f -o /tmp/trace.txt musl-gcc t.o
/opt/musl/lib/libc.so: file not recognized: File format not recognized
collect2: ld returned 1 exit status

verbose ld output attached as ld.txt

bash-4.1# ld --verbose -dynamic-linker /lib/ld-musl-x86_64.so.1 -nostdlib 
/opt/musl/lib/crt1.o /opt/musl/lib/crti.o /usr/gcc/lib/crtbegin.o 
-L/opt/musl/lib -L /lib/. t.o /usr/gcc/lib/libgcc.a 
/usr/gcc/lib/libgcc_eh.a -lc /usr/gcc/lib/libgcc.a 
/usr/gcc/lib/libgcc_eh.a &> /tmp/ld.txt

>
> By the way, how old were those binutils? I saw "firmware Linux"
> mentioned, which was the predecessor of Aboriginal, so unless that's
> just still landley's dir name, maybe these are a lot older than I
> thought..

bash-4.1# ld -V
GNU ld version 2.17
   Supported emulations:
    elf_x86_64
    elf_i386
    i386linux

Hope this helps.

Cheers,
Jens

>
> Rich
>

[-- Attachment #2: Type: TEXT/PLAIN, Size: 82153 bytes --]

10236 execve("/bin/musl-gcc", ["musl-gcc", "t.o"], [/* 18 vars */]) = 0
10236 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
10236 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
10236 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
10236 open("/dev/tty", O_RDWR|O_NONBLOCK) = 3
10236 close(3)                          = 0
10236 brk(0)                            = 0x5b4000
10236 brk(0x5b5000)                     = 0x5b5000
10236 brk(0x5b6000)                     = 0x5b6000
10236 getuid()                          = 0
10236 getgid()                          = 0
10236 geteuid()                         = 0
10236 getegid()                         = 0
10236 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
10236 time(NULL)                        = 1376470685
10236 brk(0x5b7000)                     = 0x5b7000
10236 rt_sigaction(SIGCHLD, {SIG_DFL, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], 0}, 8) = 0
10236 rt_sigaction(SIGCHLD, {SIG_DFL, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], SA_RESTORER, 0x470304}, 8) = 0
10236 rt_sigaction(SIGINT, {SIG_DFL, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], 0}, 8) = 0
10236 rt_sigaction(SIGINT, {SIG_DFL, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], SA_RESTORER, 0x470304}, 8) = 0
10236 rt_sigaction(SIGQUIT, {SIG_DFL, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], 0}, 8) = 0
10236 rt_sigaction(SIGQUIT, {SIG_DFL, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], SA_RESTORER, 0x470304}, 8) = 0
10236 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
10236 rt_sigaction(SIGQUIT, {SIG_IGN, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], SA_RESTORER, 0x470304}, 8) = 0
10236 uname({sys="Linux", node="laas.mine.nu", ...}) = 0
10236 brk(0x5b8000)                     = 0x5b8000
10236 brk(0x5b9000)                     = 0x5b9000
10236 stat("/build/staging", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
10236 stat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
10236 getpid()                          = 10236
10236 getppid()                         = 10235
10236 gettimeofday({1376470685, 184675}, NULL) = 0
10236 getpid()                          = 10236
10236 brk(0x5ba000)                     = 0x5ba000
10236 brk(0x5bb000)                     = 0x5bb000
10236 getpgrp()                         = 10235
10236 rt_sigaction(SIGCHLD, {0x41ca8d, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], SA_RESTORER, 0x470304}, 8) = 0
10236 brk(0x5bc000)                     = 0x5bc000
10236 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
10236 open("/bin/musl-gcc", O_RDONLY)   = 3
10236 ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff70b66150) = -1 ENOTTY (Inappropriate ioctl for device)
10236 lseek(3, 0, SEEK_CUR)             = 0
10236 read(3, "#!/bin/sh\nexec ${REALGCC:-rawgcc"..., 80) = 77
10236 lseek(3, 0, SEEK_SET)             = 0
10236 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=4*1024}) = 0
10236 fcntl(255, F_GETFD)               = -1 EBADF (Bad file descriptor)
10236 dup2(3, 255)                      = 255
10236 close(3)                          = 0
10236 fcntl(255, F_SETFD, FD_CLOEXEC)   = 0
10236 fcntl(255, F_GETFL)               = 0x8000 (flags O_RDONLY|O_LARGEFILE)
10236 fstat(255, {st_mode=S_IFREG|0755, st_size=77, ...}) = 0
10236 lseek(255, 0, SEEK_CUR)           = 0
10236 brk(0x5bd000)                     = 0x5bd000
10236 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
10236 read(255, "#!/bin/sh\nexec ${REALGCC:-rawgcc"..., 77) = 77
10236 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
10236 stat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
10236 stat("/bin64/rawgcc", 0x7fff70b65e40) = -1 ENOENT (No such file or directory)
10236 stat("/bin/rawgcc", {st_mode=S_IFREG|0755, st_size=122984, ...}) = 0
10236 stat("/bin/rawgcc", {st_mode=S_IFREG|0755, st_size=122984, ...}) = 0
10236 brk(0x5be000)                     = 0x5be000
10236 rt_sigaction(SIGINT, {SIG_DFL, [], SA_RESTORER, 0x470304}, {SIG_DFL, [], SA_RESTORER, 0x470304}, 8) = 0
10236 rt_sigaction(SIGQUIT, {SIG_DFL, [], SA_RESTORER, 0x470304}, {SIG_IGN, [], SA_RESTORER, 0x470304}, 8) = 0
10236 rt_sigaction(SIGCHLD, {SIG_DFL, [], SA_RESTORER, 0x470304}, {0x41ca8d, [], SA_RESTORER, 0x470304}, 8) = 0
10236 execve("/bin/rawgcc", ["rawgcc", "t.o", "-specs", "/opt/musl/lib/musl-gcc.specs"], [/* 17 vars */]) = 0
10236 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f67a9666000
10236 stat("/etc/ld-uClibc.so.cache", 0x7fff218083f0) = -1 ENOENT (No such file or directory)
10236 open("/lib/libc.so.0", O_RDONLY)  = 3
10236 fstat(3, {st_mode=S_IFREG|0644, st_size=294744, ...}) = 0
10236 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f67a9665000
10236 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\336\0\0\0\0\0\0"..., 4096) = 4096
10236 mmap(NULL, 1347584, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f67a941a000
10236 mmap(0x7f67a941a000, 271284, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x7f67a941a000
10236 mmap(0x7f67a955c000, 6208, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x42000) = 0x7f67a955c000
10236 mmap(0x7f67a955e000, 20408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f67a955e000
10236 close(3)                          = 0
10236 munmap(0x7f67a9665000, 4096)      = 0
10236 stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21520, ...}) = 0
10236 mprotect(0x7f67a9667000, 4096, PROT_READ) = 0
10236 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
10236 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
10236 brk(0)                            = 0x51e000
10236 rt_sigaction(SIGINT, {SIG_IGN, [INT], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_DFL, [], 0}, 8) = 0
10236 rt_sigaction(SIGINT, {0x40b040, [INT], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_IGN, [INT], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, 8) = 0
10236 rt_sigaction(SIGHUP, {SIG_IGN, [HUP], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_DFL, [], 0}, 8) = 0
10236 rt_sigaction(SIGHUP, {0x40b040, [HUP], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_IGN, [HUP], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, 8) = 0
10236 rt_sigaction(SIGTERM, {SIG_IGN, [TERM], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_DFL, [], 0}, 8) = 0
10236 rt_sigaction(SIGTERM, {0x40b040, [TERM], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_IGN, [TERM], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, 8) = 0
10236 rt_sigaction(SIGPIPE, {SIG_IGN, [PIPE], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_DFL, [], 0}, 8) = 0
10236 rt_sigaction(SIGPIPE, {0x40b040, [PIPE], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_IGN, [PIPE], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, 8) = 0
10236 rt_sigaction(SIGCHLD, {SIG_DFL, [CHLD], SA_RESTORER|SA_RESTART, 0x7f67a9427ebc}, {SIG_DFL, [], 0}, 8) = 0
10236 brk(0x51f000)                     = 0x51f000
10236 brk(0x520000)                     = 0x520000
10236 brk(0x521000)                     = 0x521000
10236 brk(0x522000)                     = 0x522000
10236 access("/bin64/rawgcc", X_OK)     = -1 ENOENT (No such file or directory)
10236 access("/bin/rawgcc", X_OK)       = 0
10236 readlink("/bin", "usr/bin", 4095) = 7
10236 readlink("/usr", 0x7fff21806590, 4095) = -1 EINVAL (Invalid argument)
10236 readlink("/usr/bin", 0x7fff21806590, 4095) = -1 EINVAL (Invalid argument)
10236 readlink("/usr/bin/rawgcc", 0x7fff21806590, 4095) = -1 EINVAL (Invalid argument)
10236 access("/bin64/rawgcc", X_OK)     = -1 ENOENT (No such file or directory)
10236 access("/bin/rawgcc", X_OK)       = 0
10236 readlink("/bin", "usr/bin", 4095) = 7
10236 readlink("/usr", 0x7fff21806590, 4095) = -1 EINVAL (Invalid argument)
10236 readlink("/usr/bin", 0x7fff21806590, 4095) = -1 EINVAL (Invalid argument)
10236 readlink("/usr/bin/rawgcc", 0x7fff21806590, 4095) = -1 EINVAL (Invalid argument)
10236 access("/usr/bin/", X_OK)         = 0
10236 access("/usr/bin/", X_OK)         = 0
10236 access("/usr/bin/", X_OK)         = 0
10236 access("/usr/bin/", X_OK)         = 0
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("t.o", F_OK)               = 0
10236 brk(0x523000)                     = 0x523000
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/lib/x86_64-unknown-linux/4.1.2/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/lib/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/lib/x86_64-unknown-linux/4.1.2/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/lib/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/specs", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/", X_OK)         = 0
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/", X_OK) = -1 ENOENT (No such file or directory)
10236 access("/opt/musl/lib/musl-gcc.specs", R_OK) = 0
10236 open("/opt/musl/lib/musl-gcc.specs", O_RDONLY) = 3
10236 stat("/opt/musl/lib/musl-gcc.specs", {st_mode=S_IFREG|0644, st_size=661, ...}) = 0
10236 read(3, "%rename cpp_options old_cpp_opti"..., 661) = 661
10236 close(3)                          = 0
10236 brk(0x524000)                     = 0x524000
10236 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/collect2", {st_mode=S_IFREG|0755, st_size=97248, ...}) = 0
10236 access("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/collect2", X_OK) = 0
10236 access("/usr/gcc/lib/crtbegin.o", R_OK) = 0
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/lib/../lib64/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/lib/../lib64/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../lib64/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/../lib64/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/lib/../lib64/.", R_OK)   = -1 ENOENT (No such file or directory)
10236 access("/usr/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/lib/../lib64/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/lib/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/lib/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/lib/x86_64-unknown-linux/4.1.2/.", R_OK) = -1 ENOENT (No such file or directory)
10236 access("/lib/.", R_OK)            = 0
10236 brk(0x525000)                     = 0x525000
10236 access("/usr/gcc/lib/libgcc.a", R_OK) = 0
10236 access("/usr/gcc/lib/libgcc_eh.a", R_OK) = 0
10236 access("/usr/gcc/lib/libgcc_eh.a", R_OK) = 0
10236 access("/usr/gcc/lib/libgcc.a", R_OK) = 0
10236 access("/usr/gcc/lib/libgcc_eh.a", R_OK) = 0
10236 access("/usr/gcc/lib/libgcc_eh.a", R_OK) = 0
10236 access("/usr/gcc/lib/crtend.o", R_OK) = 0
10236 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/collect2", {st_mode=S_IFREG|0755, st_size=97248, ...}) = 0
10236 access("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/collect2", X_OK) = 0
10236 vfork()                           = 10237
10236 wait4(10237,  <unfinished ...>
10237 execve("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/collect2", ["/usr/bin/../libexec/gcc/x86_64-u"..., "-dynamic-linker", "/lib/ld-musl-x86_64.so.1", "-nostdlib", "/opt/musl/lib/crt1.o", "/opt/musl/lib/crti.o", "/usr/gcc/lib/crtbegin.o", "-L/opt/musl/lib", "-L", "/lib/.", "t.o", "/usr/gcc/lib/libgcc.a", "/usr/gcc/lib/libgcc_eh.a", "-lc", "/usr/gcc/lib/libgcc.a", "/usr/gcc/lib/libgcc_eh.a", ...], [/* 22 vars */]) = 0
10237 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f176b91f000
10237 stat("/etc/ld-uClibc.so.cache", 0x7ffffd0ba500) = -1 ENOENT (No such file or directory)
10237 open("/lib/libc.so.0", O_RDONLY)  = 3
10237 fstat(3, {st_mode=S_IFREG|0644, st_size=294744, ...}) = 0
10237 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f176b91e000
10237 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\336\0\0\0\0\0\0"..., 4096) = 4096
10237 mmap(NULL, 1347584, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f176b6d3000
10237 mmap(0x7f176b6d3000, 271284, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x7f176b6d3000
10237 mmap(0x7f176b815000, 6208, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x42000) = 0x7f176b815000
10237 mmap(0x7f176b817000, 20408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f176b817000
10237 close(3)                          = 0
10237 munmap(0x7f176b91e000, 4096)      = 0
10237 stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21520, ...}) = 0
10237 mprotect(0x7f176b920000, 4096, PROT_READ) = 0
10237 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
10237 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
10237 brk(0)                            = 0x519000
10237 brk(0x51a000)                     = 0x51a000
10237 rt_sigaction(SIGCHLD, {SIG_DFL, [CHLD], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_DFL, [], 0}, 8) = 0
10237 brk(0x51b000)                     = 0x51b000
10237 rt_sigaction(SIGQUIT, {SIG_IGN, [QUIT], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_DFL, [], 0}, 8) = 0
10237 rt_sigaction(SIGQUIT, {0x403170, [QUIT], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_IGN, [QUIT], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, 8) = 0
10237 rt_sigaction(SIGINT, {SIG_IGN, [INT], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_DFL, [], 0}, 8) = 0
10237 rt_sigaction(SIGINT, {0x403170, [INT], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_IGN, [INT], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, 8) = 0
10237 rt_sigaction(SIGALRM, {SIG_IGN, [ALRM], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_DFL, [], 0}, 8) = 0
10237 rt_sigaction(SIGALRM, {0x403170, [ALRM], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_IGN, [ALRM], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, 8) = 0
10237 rt_sigaction(SIGHUP, {SIG_IGN, [HUP], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_DFL, [], 0}, 8) = 0
10237 rt_sigaction(SIGHUP, {0x403170, [HUP], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_IGN, [HUP], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, 8) = 0
10237 rt_sigaction(SIGSEGV, {SIG_IGN, [SEGV], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_DFL, [], 0}, 8) = 0
10237 rt_sigaction(SIGSEGV, {0x403170, [SEGV], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_IGN, [SEGV], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, 8) = 0
10237 rt_sigaction(SIGBUS, {SIG_IGN, [BUS], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_DFL, [], 0}, 8) = 0
10237 rt_sigaction(SIGBUS, {0x403170, [BUS], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, {SIG_IGN, [BUS], SA_RESTORER|SA_RESTART, 0x7f176b6e0ebc}, 8) = 0
10237 brk(0x51c000)                     = 0x51c000
10237 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/real-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/collect-ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin64/ld", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin/ld", {st_mode=S_IFREG|0755, st_size=929024, ...}) = 0
10237 access("/bin/ld", X_OK)           = 0
10237 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin64/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin/gnm", 0x7ffffd0ba850)  = -1 ENOENT (No such file or directory)
10237 stat("/sbin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/sbin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/etc/gnm", 0x7ffffd0ba850)  = -1 ENOENT (No such file or directory)
10237 stat("./gnm", 0x7ffffd0ba850)     = -1 ENOENT (No such file or directory)
10237 stat("/opt/alpine/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/apache/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/av/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/avr/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/dev-arm/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/dev-avr/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/dev-x86_32/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/dovecot/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/emacs/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/exim/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/jvm/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/man/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/minicom/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/mlmmj/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/nodejs/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/qemu/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/rsync/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/sensor/bin/gnm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin64/nm", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin/nm", {st_mode=S_IFREG|0755, st_size=569224, ...}) = 0
10237 access("/bin/nm", X_OK)           = 0
10237 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin64/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/sbin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/sbin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/etc/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("./gstrip", 0x7ffffd0ba850)  = -1 ENOENT (No such file or directory)
10237 stat("/opt/alpine/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/apache/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/av/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/avr/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/dev-arm/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/dev-avr/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/dev-x86_32/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/dovecot/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/emacs/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/exim/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/jvm/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/man/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/minicom/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/mlmmj/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/nodejs/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/qemu/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/rsync/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/opt/sensor/bin/gstrip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin64/strip", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin/strip", {st_mode=S_IFREG|0755, st_size=713360, ...}) = 0
10237 access("/bin/strip", X_OK)        = 0
10237 stat("/usr/bin/../libexec/gcc/x86_64-unknown-linux/4.1.2/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../libexec/gcc/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/libexec/gcc/x86_64-unknown-linux/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/4.1.2/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib/gcc/x86_64-unknown-linux/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/4.1.2/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/libexec/gcc/x86_64-unknown-linux/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/4.1.2/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/lib/gcc/x86_64-unknown-linux/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/usr/bin/../lib/gcc/x86_64-unknown-linux/4.1.2/../../../../x86_64-unknown-linux/bin/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/x86_64-unknown-linux/4.1.2/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/bin/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin64/rawgcc", 0x7ffffd0ba850) = -1 ENOENT (No such file or directory)
10237 stat("/bin/rawgcc", {st_mode=S_IFREG|0755, st_size=122984, ...}) = 0
10237 access("/bin/rawgcc", X_OK)       = 0
10237 access("/tmp", R_OK|W_OK|X_OK)    = 0
10237 gettimeofday({1376470685, 195645}, NULL) = 0
10237 getpid()                          = 10237
10237 open("/tmp/cc0cqiJm.c", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
10237 close(3)                          = 0
10237 gettimeofday({1376470685, 195749}, NULL) = 0
10237 getpid()                          = 10237
10237 open("/tmp/ccI7FXiz.o", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
10237 close(3)                          = 0
10237 gettimeofday({1376470685, 195841}, NULL) = 0
10237 getpid()                          = 10237
10237 open("/tmp/ccoxe2SL.ld", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
10237 close(3)                          = 0
10237 gettimeofday({1376470685, 195931}, NULL) = 0
10237 getpid()                          = 10237
10237 open("/tmp/cckn2ptY.le", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
10237 close(3)                          = 0
10237 open("/tmp/ccoxe2SL.ld", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3
10237 open("/tmp/cckn2ptY.le", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4
10237 vfork()                           = 10238
10237 close(3)                          = 0
10237 close(4)                          = 0
10237 wait4(10238,  <unfinished ...>
10238 dup2(3, 1)                        = 1
10238 close(3)                          = 0
10238 dup2(4, 2)                        = 2
10238 close(4)                          = 0
10238 execve("/bin/ld", ["/bin/ld", "-dynamic-linker", "/lib/ld-musl-x86_64.so.1", "-nostdlib", "/opt/musl/lib/crt1.o", "/opt/musl/lib/crti.o", "/usr/gcc/lib/crtbegin.o", "-L/opt/musl/lib", "-L", "/lib/.", "t.o", "/usr/gcc/lib/libgcc.a", "/usr/gcc/lib/libgcc_eh.a", "-lc", "/usr/gcc/lib/libgcc.a", "/usr/gcc/lib/libgcc_eh.a", ...], [/* 23 vars */]) = 0
10238 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f14dce6c000
10238 stat("/etc/ld-uClibc.so.cache", 0x7fff9cfd9980) = -1 ENOENT (No such file or directory)
10238 open("/lib/libc.so.0", O_RDONLY)  = 3
10238 fstat(3, {st_mode=S_IFREG|0644, st_size=294744, ...}) = 0
10238 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f14dce6b000
10238 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\336\0\0\0\0\0\0"..., 4096) = 4096
10238 mmap(NULL, 1347584, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f14dcc20000
10238 mmap(0x7f14dcc20000, 271284, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x7f14dcc20000
10238 mmap(0x7f14dcd62000, 6208, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x42000) = 0x7f14dcd62000
10238 mmap(0x7f14dcd64000, 20408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f14dcd64000
10238 close(3)                          = 0
10238 munmap(0x7f14dce6b000, 4096)      = 0
10238 stat("/lib/ld-uClibc.so.0", {st_mode=S_IFREG|0755, st_size=21520, ...}) = 0
10238 mprotect(0x7f14dce6d000, 4096, PROT_READ) = 0
10238 ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
10238 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9940) = -1 ENOTTY (Inappropriate ioctl for device)
10238 getrusage(RUSAGE_SELF, {ru_utime={0, 0}, ru_stime={0, 0}, ...}) = 0
10238 brk(0)                            = 0x5e7000
10238 brk(0x5e8000)                     = 0x5e8000
10238 brk(0x5e9000)                     = 0x5e9000
10238 brk(0x5ea000)                     = 0x5ea000
10238 brk(0x5eb000)                     = 0x5eb000
10238 brk(0x5ec000)                     = 0x5ec000
10238 readlink("/bin", "usr/bin", 4095) = 7
10238 readlink("/usr", 0x7fff9cfd7db0, 4095) = -1 EINVAL (Invalid argument)
10238 readlink("/usr/bin", 0x7fff9cfd7db0, 4095) = -1 EINVAL (Invalid argument)
10238 readlink("/usr/bin/ld", 0x7fff9cfd7db0, 4095) = -1 EINVAL (Invalid argument)
10238 stat("/usr/bin/../x86_64-unknown-linux/lib/ldscripts", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
10238 brk(0x5ee000)                     = 0x5ee000
10238 brk(0x5ef000)                     = 0x5ef000
10238 brk(0x5f0000)                     = 0x5f0000
10238 brk(0x5f1000)                     = 0x5f1000
10238 brk(0x5f2000)                     = 0x5f2000
10238 brk(0x5f3000)                     = 0x5f3000
10238 brk(0x5f4000)                     = 0x5f4000
10238 brk(0x5f5000)                     = 0x5f5000
10238 brk(0x5f6000)                     = 0x5f6000
10238 brk(0x5f7000)                     = 0x5f7000
10238 brk(0x5f8000)                     = 0x5f8000
10238 brk(0x5f9000)                     = 0x5f9000
10238 brk(0x5fa000)                     = 0x5fa000
10238 brk(0x5fb000)                     = 0x5fb000
10238 stat("a.out", 0x7fff9cfd9c60)     = -1 ENOENT (No such file or directory)
10238 open("a.out", O_RDWR|O_CREAT|O_TRUNC, 0666) = 3
10238 ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9c00) = -1 ENOTTY (Inappropriate ioctl for device)
10238 brk(0x5fc000)                     = 0x5fc000
10238 brk(0x5fd000)                     = 0x5fd000
10238 brk(0x605000)                     = 0x605000
10238 brk(0x606000)                     = 0x606000
10238 brk(0x607000)                     = 0x607000
10238 brk(0x608000)                     = 0x608000
10238 open("/opt/musl/lib/crt1.o", O_RDONLY) = 4
10238 ioctl(4, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9bf0) = -1 ENOTTY (Inappropriate ioctl for device)
10238 brk(0x609000)                     = 0x609000
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(4, 0, SEEK_SET)             = 0
10238 lseek(4, 0, SEEK_SET)             = 0
10238 lseek(4, 0, SEEK_SET)             = 0
10238 lseek(4, 0, SEEK_SET)             = 0
10238 read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\1\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 brk(0x60a000)                     = 0x60a000
10238 brk(0x612000)                     = 0x612000
10238 lseek(4, 472, SEEK_SET)           = 472
10238 read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 lseek(4, 1368, SEEK_SET)          = 1368
10238 read(4, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\320\6\0\0\0\0\0\0"..., 64) = 64
10238 lseek(4, 536, SEEK_SET)           = 536
10238 read(4, " \0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "\33\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "&\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0l\0\0\0\0\0\0\0"..., 64) = 64
10238 read(4, ",\0\0\0\10\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0l\0\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "6\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0l\0\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "1\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\7\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "G\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\270\0\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "B\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0x\7\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "S\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\22\1\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "f\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0000\1\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "a\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\330\7\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "\21\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\1\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "\1\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\230\5\0\0\0\0\0\0"..., 64) = 64
10238 read(4, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\320\6\0\0\0\0\0\0"..., 64) = 64
10238 lseek(4, 352, SEEK_SET)           = 352
10238 read(4, "\0.symtab\0.strtab\0.shstrtab\0.rela"..., 117) = 117
10238 brk(0x613000)                     = 0x613000
10238 lseek(4, 1624, SEEK_SET)          = 1624
10238 read(4, "\1\0\0\0 \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0 \0\0\0"..., 120) = 120
10238 read(4, "\0_init\0_fini\0_start\0main\0__libc_"..., 43) = 43
10238 lseek(4, 1792, SEEK_SET)          = 1792
10238 read(4, "\21\0\0\0\0\0\0\0\v\0\0\0\t\0\0\0\0\0\0\0\0\0\0\0\30\0\0\0\0\0\0\0"..., 96) = 96
10238 read(4, "5\0\0\0\0\0\0\0\1\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0", 24) = 24
10238 read(4, "\6\0\0\0\0\0\0\0\n\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\f\0\0\0\0\0\0\0"..., 96) = 96
10238 read(4, "\6\0\0\0\0\0\0\0\n\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0"..., 48) = 48
10238 brk(0x614000)                     = 0x614000
10238 brk(0x615000)                     = 0x615000
10238 open("/opt/musl/lib/crti.o", O_RDONLY) = 5
10238 ioctl(5, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9bf0) = -1 ENOTTY (Inappropriate ioctl for device)
10238 brk(0x616000)                     = 0x616000
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(5, 0, SEEK_SET)             = 0
10238 lseek(5, 0, SEEK_SET)             = 0
10238 lseek(5, 0, SEEK_SET)             = 0
10238 lseek(5, 0, SEEK_SET)             = 0
10238 read(5, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\1\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 brk(0x617000)                     = 0x617000
10238 brk(0x61f000)                     = 0x61f000
10238 lseek(5, 120, SEEK_SET)           = 120
10238 read(5, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 lseek(5, 632, SEEK_SET)           = 632
10238 read(5, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0x\3\0\0\0\0\0\0"..., 64) = 64
10238 lseek(5, 184, SEEK_SET)           = 184
10238 read(5, "\33\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(5, "!\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(5, "'\0\0\0\10\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(5, ",\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(5, "2\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(5, "\21\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(5, "\1\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\270\2\0\0\0\0\0\0"..., 64) = 64
10238 read(5, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0x\3\0\0\0\0\0\0"..., 64) = 64
10238 lseek(5, 64, SEEK_SET)            = 64
10238 read(5, "\0.symtab\0.strtab\0.shstrtab\0.text"..., 56) = 56
10238 lseek(5, 840, SEEK_SET)           = 840
10238 read(5, "\1\0\0\0\20\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\7\0\0\0\20\0\5\0"..., 48) = 48
10238 read(5, "\0_init\0_fini\0", 13)   = 13
10238 brk(0x620000)                     = 0x620000
10238 brk(0x621000)                     = 0x621000
10238 open("/usr/gcc/lib/crtbegin.o", O_RDONLY) = 6
10238 ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9bf0) = -1 ENOTTY (Inappropriate ioctl for device)
10238 brk(0x622000)                     = 0x622000
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(6, 0, SEEK_SET)             = 0
10238 lseek(6, 0, SEEK_SET)             = 0
10238 lseek(6, 0, SEEK_SET)             = 0
10238 lseek(6, 0, SEEK_SET)             = 0
10238 read(6, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\1\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 brk(0x623000)                     = 0x623000
10238 brk(0x62b000)                     = 0x62b000
10238 lseek(6, 352, SEEK_SET)           = 352
10238 read(6, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 lseek(6, 1440, SEEK_SET)          = 1440
10238 read(6, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\330\7\0\0\0\0\0\0"..., 64) = 64
10238 lseek(6, 416, SEEK_SET)           = 416
10238 read(6, " \0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "\33\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0h\10\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "+\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\250\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "&\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\t\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "1\0\0\0\10\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\270\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "6\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\270\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "=\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\300\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "D\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\310\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "N\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\310\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "I\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0(\t\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "Y\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\315\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "T\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\t\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "_\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\322\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "h\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\344\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "\21\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\344\0\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "\1\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\340\5\0\0\0\0\0\0"..., 64) = 64
10238 read(6, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\330\7\0\0\0\0\0\0"..., 64) = 64
10238 lseek(6, 228, SEEK_SET)           = 228
10238 read(6, "\0.symtab\0.strtab\0.shstrtab\0.rela"..., 120) = 120
10238 brk(0x62c000)                     = 0x62c000
10238 lseek(6, 1960, SEEK_SET)          = 1960
10238 read(6, "m\0\0\0\21\2\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0z\0\0\0 \0\0\0"..., 48) = 48
10238 read(6, "\0crtstuff.c\0__CTOR_LIST__\0__DTOR"..., 142) = 142
10238 lseek(6, 2152, SEEK_SET)          = 2152
10238 read(6, "\2\0\0\0\0\0\0\0\2\0\0\0\4\0\0\0\373\377\377\377\377\377\377\377\27\0\0\0\0\0\0\0"..., 168) = 168
10238 read(6, "\10\0\0\0\0\0\0\0\1\0\0\0\7\0\0\0\10\0\0\0\0\0\0\0", 24) = 24
10238 read(6, "\1\0\0\0\0\0\0\0\2\0\0\0\2\0\0\0\374\377\377\377\377\377\377\377", 24) = 24
10238 read(6, "\1\0\0\0\0\0\0\0\2\0\0\0\2\0\0\0<\0\0\0\0\0\0\0", 24) = 24
10238 brk(0x62d000)                     = 0x62d000
10238 open("t.o", O_RDONLY)             = 7
10238 ioctl(7, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9bf0) = -1 ENOTTY (Inappropriate ioctl for device)
10238 brk(0x62e000)                     = 0x62e000
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0", 8)     = 8
10238 lseek(7, 0, SEEK_SET)             = 0
10238 lseek(7, 0, SEEK_SET)             = 0
10238 lseek(7, 0, SEEK_SET)             = 0
10238 lseek(7, 0, SEEK_SET)             = 0
10238 read(7, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\1\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 brk(0x62f000)                     = 0x62f000
10238 brk(0x637000)                     = 0x637000
10238 lseek(7, 160, SEEK_SET)           = 160
10238 read(7, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 lseek(7, 672, SEEK_SET)           = 672
10238 read(7, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\240\3\0\0\0\0\0\0"..., 64) = 64
10238 lseek(7, 224, SEEK_SET)           = 224
10238 read(7, "\33\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(7, "!\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\0\0\0\0\0\0\0"..., 64) = 64
10238 read(7, "'\0\0\0\10\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\0\0\0\0\0\0\0"..., 64) = 64
10238 read(7, ",\0\0\0\1\0\0\0000\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\0\0\0\0\0\0\0"..., 64) = 64
10238 read(7, "5\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Z\0\0\0\0\0\0\0"..., 64) = 64
10238 read(7, "\21\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Z\0\0\0\0\0\0\0"..., 64) = 64
10238 read(7, "\1\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\340\2\0\0\0\0\0\0"..., 64) = 64
10238 read(7, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\240\3\0\0\0\0\0\0"..., 64) = 64
10238 lseek(7, 90, SEEK_SET)            = 90
10238 read(7, "\0.symtab\0.strtab\0.shstrtab\0.text"..., 69) = 69
10238 lseek(7, 904, SEEK_SET)           = 904
10238 read(7, "\5\0\0\0\22\0\1\0\0\0\0\0\0\0\0\0\6\0\0\0\0\0\0\0", 24) = 24
10238 read(7, "\0t.c\0main\0", 10)      = 10
10238 brk(0x638000)                     = 0x638000
10238 brk(0x639000)                     = 0x639000
10238 open("/usr/gcc/lib/libgcc.a", O_RDONLY) = 8
10238 ioctl(8, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9bf0) = -1 ENOTTY (Inappropriate ioctl for device)
10238 brk(0x63a000)                     = 0x63a000
10238 lseek(8, 0, SEEK_SET)             = 0
10238 read(8, "!<arch>\n", 8)           = 8
10238 read(8, "/               ", 16)   = 16
10238 lseek(8, -16, SEEK_CUR)           = 8
10238 read(8, "/               1238745504  0   "..., 60) = 60
10238 read(8, "\0\0\0A", 4)             = 4
10238 read(8, "\0\0\4^\0\0\33j\0\0,^\0\0@\202\0\0T\246\0\0h\262\0\0y\376\0\0\213J"..., 260) = 260
10238 read(8, "__multi3\0__negti2\0__lshrti3\0__as"..., 700) = 700
10238 lseek(8, 0, SEEK_CUR)             = 1032
10238 lseek(8, 1032, SEEK_SET)          = 1032
10238 read(8, "//                              "..., 60) = 60
10238 lseek(8, 1032, SEEK_SET)          = 1032
10238 read(8, "//              ", 16)   = 16
10238 lseek(8, -16, SEEK_CUR)           = 1032
10238 read(8, "//                              "..., 60) = 60
10238 read(8, "_enable_execute_stack.o/\n\n", 26) = 26
10238 lseek(8, 0, SEEK_CUR)             = 1118
10238 lseek(8, 1118, SEEK_SET)          = 1118
10238 read(8, "_muldi3.o/      1238745495  1000"..., 60) = 60
10238 brk(0x63b000)                     = 0x63b000
10238 brk(0x63c000)                     = 0x63c000
10238 lseek(8, 0, SEEK_CUR)             = 1178
10238 lseek(8, 1178, SEEK_SET)          = 1178
10238 read(8, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\1\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 brk(0x63d000)                     = 0x63d000
10238 brk(0x645000)                     = 0x645000
10238 lseek(8, 3722, SEEK_SET)          = 3722
10238 read(8, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 lseek(8, 5130, SEEK_SET)          = 5130
10238 read(8, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\21\0\0\0\0\0\0"..., 64) = 64
10238 lseek(8, 3786, SEEK_SET)          = 3786
10238 read(8, "\33\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "!\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\10\1\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "'\0\0\0\10\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\10\1\0\0\0\0\0\0"..., 64) = 64
10238 read(8, ",\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\10\1\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "?\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\5\2\0\0\0\0\0\0"..., 64) = 64
10238 read(8, ":\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\21\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "P\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0B\4\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "K\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\26\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "a\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\340\4\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\\\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0X\26\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "n\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\5\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "~\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\n\6\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "y\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\210\26\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\223\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0)\6\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\216\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\240\26\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\242\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Y\6\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\260\0\0\0\1\0\0\0000\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0009\7\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\273\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\t\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\304\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\26\t\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\21\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\26\t\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\1\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\260\17\0\0\0\0\0\0"..., 64) = 64
10238 read(8, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\21\0\0\0\0\0\0"..., 64) = 64
10238 lseek(8, 3504, SEEK_SET)          = 3504
10238 read(8, "\0.symtab\0.strtab\0.shstrtab\0.text"..., 212) = 212
10238 brk(0x646000)                     = 0x646000
10238 brk(0x647000)                     = 0x647000
10238 brk(0x648000)                     = 0x648000
10238 open("/usr/gcc/lib/libgcc_eh.a", O_RDONLY) = 9
10238 ioctl(9, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9bf0) = -1 ENOTTY (Inappropriate ioctl for device)
10238 brk(0x649000)                     = 0x649000
10238 lseek(9, 0, SEEK_SET)             = 0
10238 read(9, "!<arch>\n", 8)           = 8
10238 read(9, "/               ", 16)   = 16
10238 lseek(9, -16, SEEK_CUR)           = 8
10238 read(9, "/               1238745504  0   "..., 60) = 60
10238 read(9, "\0\0\0#", 4)             = 4
10238 read(9, "\0\0\rv\0\0\rv\0\0\rv\0\0\rv\0\0\rv\0\0\rv\0\0\rv\0\0\rv"..., 140) = 140
10238 read(9, "__deregister_frame_info_bases\0__"..., 786) = 786
10238 lseek(9, 0, SEEK_CUR)             = 998
10238 lseek(9, 998, SEEK_SET)           = 998
10238 read(9, "//                              "..., 60) = 60
10238 lseek(9, 998, SEEK_SET)           = 998
10238 read(9, "//              ", 16)   = 16
10238 lseek(9, -16, SEEK_CUR)           = 998
10238 read(9, "//                              "..., 60) = 60
10238 read(9, "unwind-dw2-fde-glibc.o/\n", 24) = 24
10238 lseek(9, 0, SEEK_CUR)             = 1082
10238 lseek(9, 1082, SEEK_SET)          = 1082
10238 read(9, "unwind-dw2.o/   1238745499  1000"..., 60) = 60
10238 brk(0x64a000)                     = 0x64a000
10238 brk(0x64b000)                     = 0x64b000
10238 lseek(9, 0, SEEK_CUR)             = 1142
10238 lseek(9, 1142, SEEK_SET)          = 1142
10238 read(9, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\1\0>\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 brk(0x64c000)                     = 0x64c000
10238 brk(0x654000)                     = 0x654000
10238 lseek(9, 1838, SEEK_SET)          = 1838
10238 read(9, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 lseek(9, 2670, SEEK_SET)          = 2670
10238 read(9, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\7\0\0\0\0\0\0"..., 64) = 64
10238 lseek(9, 1902, SEEK_SET)          = 1902
10238 read(9, "\33\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "!\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "'\0\0\0\10\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(9, ",\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "?\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0j\0\0\0\0\0\0\0"..., 64) = 64
10238 read(9, ":\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0P\7\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "K\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\354\0\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "W\0\0\0\1\0\0\0000\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\t\1\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "b\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0$\2\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "k\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0006\2\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "\21\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0006\2\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "\1\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0008\6\0\0\0\0\0\0"..., 64) = 64
10238 read(9, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0@\7\0\0\0\0\0\0"..., 64) = 64
10238 lseek(9, 1708, SEEK_SET)          = 1708
10238 read(9, "\0.symtab\0.strtab\0.shstrtab\0.text"..., 123) = 123
10238 brk(0x655000)                     = 0x655000
10238 brk(0x656000)                     = 0x656000
10238 brk(0x657000)                     = 0x657000
10238 open("/opt/musl/lib/libc.so", O_RDONLY) = 10
10238 ioctl(10, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9b50) = -1 ENOTTY (Inappropriate ioctl for device)
10238 brk(0x658000)                     = 0x658000
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0", 8)    = 8
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0", 8)    = 8
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0", 8)    = 8
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0", 8)    = 8
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0", 8)    = 8
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0", 8)    = 8
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0", 8)    = 8
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0", 8)    = 8
10238 lseek(10, 0, SEEK_SET)            = 0
10238 lseek(10, 0, SEEK_SET)            = 0
10238 lseek(10, 0, SEEK_SET)            = 0
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0"..., 64) = 64
10238 brk(0x659000)                     = 0x659000
10238 brk(0x661000)                     = 0x661000
10238 lseek(10, 2601720, SEEK_SET)      = 2601720
10238 read(10, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 64) = 64
10238 lseek(10, 2603384, SEEK_SET)      = 2603384
10238 read(10, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\320\367(\0\0\0\0\0"..., 64) = 64
10238 lseek(10, 2601784, SEEK_SET)      = 2601784
10238 read(10, "\37\0\0\0\5\0\0\0\2\0\0\0\0\0\0\0 \1\0\0\0\0\0\0 \1\0\0\0\0\0\0"..., 64) = 64
10238 read(10, "\33\0\0\0\366\377\377o\2\0\0\0\0\0\0\0`*\0\0\0\0\0\0`*\0\0\0\0\0\0"..., 64) = 64
10238 read(10, "%\0\0\0\v\0\0\0\2\0\0\0\0\0\0\0\240[\0\0\0\0\0\0\240[\0\0\0\0\0\0"..., 64) = 64
10238 read(10, "-\0\0\0\3\0\0\0\2\0\0\0\0\0\0\0H\362\0\0\0\0\0\0H\362\0\0\0\0\0\0"..., 64) = 64
10238 read(10, "5\0\0\0\4\0\0\0\2\0\0\0\0\0\0\0\250*\1\0\0\0\0\0\250*\1\0\0\0\0\0"..., 64) = 64
10238 read(10, "?\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\2202\1\0\0\0\0\0\2202\1\0\0\0\0\0"..., 64) = 64
10238 read(10, "E\0\0\0\1\0\0\0\2\0\0\0\0\0\0\0@)\5\0\0\0\0\0@)\5\0\0\0\0\0"..., 64) = 64
10238 read(10, "M\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0000'\0\0\0\0\0\0000\7\0\0\0\0\0"..., 64) = 64
10238 read(10, "Z\0\0\0\6\0\0\0\3\0\0\0\0\0\0\0\2001'\0\0\0\0\0\2001\7\0\0\0\0\0"..., 64) = 64
10238 read(10, "c\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\2002'\0\0\0\0\0\2002\7\0\0\0\0\0"..., 64) = 64
10238 read(10, "h\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\2603'\0\0\0\0\0\2603\7\0\0\0\0\0"..., 64) = 64
10238 read(10, "q\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\3403'\0\0\0\0\0\3403\7\0\0\0\0\0"..., 64) = 64
10238 read(10, "w\0\0\0\10\0\0\0\3\0\0\0\0\0\0\0\3407'\0\0\0\0\0\3307\7\0\0\0\0\0"..., 64) = 64
10238 read(10, "|\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\3307\7\0\0\0\0\0"..., 64) = 64
10238 read(10, "\205\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 8\7\0\0\0\0\0"..., 64) = 64
10238 read(10, "\224\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0000\33\10\0\0\0\0\0"..., 64) = 64
10238 read(10, "\244\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0Q\275\10\0\0\0\0\0"..., 64) = 64
10238 read(10, "\260\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\244|\21\0\0\0\0\0"..., 64) = 64
10238 read(10, "\276\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\6\5\25\0\0\0\0\0"..., 64) = 64
10238 read(10, "\312\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\200.\35\0\0\0\0\0"..., 64) = 64
10238 read(10, "\327\0\0\0\1\0\0\0000\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\30\303\36\0\0\0\0\0"..., 64) = 64
10238 read(10, "\342\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0I\232\37\0\0\0\0\0"..., 64) = 64
10238 read(10, "\355\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\373+'\0\0\0\0\0"..., 64) = 64
10238 read(10, "\21\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\373\261'\0\0\0\0\0"..., 64) = 64
10238 read(10, "\1\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\270\271'\0\0\0\0\0"..., 64) = 64
10238 read(10, "\t\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\320\367(\0\0\0\0\0"..., 64) = 64
10238 brk(0x662000)                     = 0x662000
10238 lseek(10, 64, SEEK_SET)           = 64
10238 read(10, "\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 56) = 56
10238 read(10, "\1\0\0\0\6\0\0\0\0000\7\0\0\0\0\0\0000'\0\0\0\0\0\0000'\0\0\0\0\0"..., 56) = 56
10238 read(10, "\2\0\0\0\6\0\0\0\2001\7\0\0\0\0\0\2001'\0\0\0\0\0\2001'\0\0\0\0\0"..., 56) = 56
10238 read(10, "Q\345td\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 56) = 56
10238 lseek(10, 2601467, SEEK_SET)      = 2601467
10238 read(10, "\0.symtab\0.strtab\0.shstrtab\0.gnu."..., 251) = 251
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0"..., 52) = 52
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0", 32) = 32
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF", 4)            = 4
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0"..., 128) = 128
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0"..., 64) = 64
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0"..., 64) = 64
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0"..., 52) = 52
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0"..., 52) = 52
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF", 4)            = 4
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177E", 2)              = 2
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF", 4)            = 4
10238 lseek(10, 0, SEEK_SET)            = 0
10238 read(10, "\177ELF\2\1\1\0\0", 9)  = 9
10238 open("/opt/musl/lib/libc.so", O_RDONLY) = 11
10238 ioctl(11, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9340) = -1 ENOTTY (Inappropriate ioctl for device)
10238 ioctl(11, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fff9cfd9770) = -1 ENOTTY (Inappropriate ioctl for device)
10238 read(11, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\\\352\1\0\0\0\0\0"..., 8192) = 8192
10238 write(2, "/opt/musl/lib/libc.so", 21) = 21
10238 write(2, ":", 1)                  = 1
10238 write(2, " ", 1)                  = 1
10238 write(2, "f", 1)                  = 1
10238 write(2, "i", 1)                  = 1
10238 write(2, "l", 1)                  = 1
10238 write(2, "e", 1)                  = 1
10238 write(2, " ", 1)                  = 1
10238 write(2, "n", 1)                  = 1
10238 write(2, "o", 1)                  = 1
10238 write(2, "t", 1)                  = 1
10238 write(2, " ", 1)                  = 1
10238 write(2, "r", 1)                  = 1
10238 write(2, "e", 1)                  = 1
10238 write(2, "c", 1)                  = 1
10238 write(2, "o", 1)                  = 1
10238 write(2, "g", 1)                  = 1
10238 write(2, "n", 1)                  = 1
10238 write(2, "i", 1)                  = 1
10238 write(2, "z", 1)                  = 1
10238 write(2, "e", 1)                  = 1
10238 write(2, "d", 1)                  = 1
10238 write(2, ":", 1)                  = 1
10238 write(2, " ", 1)                  = 1
10238 write(2, "File format not recognized", 26) = 26
10238 write(2, "\n", 1)                 = 1
10238 close(3)                          = 0
10238 lstat("a.out", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
10238 unlink("a.out")                   = 0
10238 _exit(1)                          = ?
10237 <... wait4 resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0, NULL) = 10238
10237 --- SIGCHLD (Child exited) @ 0 (0) ---
10237 brk(0x51d000)                     = 0x51d000
10237 brk(0x51e000)                     = 0x51e000
10237 brk(0x51f000)                     = 0x51f000
10237 brk(0x520000)                     = 0x520000
10237 brk(0x521000)                     = 0x521000
10237 getcwd("/var/lib/build/staging", 4097) = 23
10237 access("/bin/ld.rpo", R_OK)       = -1 ENOENT (No such file or directory)
10237 access("/lib/ld-musl-x86_64.so.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/opt/musl/lib/crt1.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/opt/musl/lib/crti.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/usr/gcc/lib/crtbegin.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/lib/.rpo", R_OK)         = -1 ENOENT (No such file or directory)
10237 access("t.rpo", R_OK)             = -1 ENOENT (No such file or directory)
10237 access("/usr/gcc/lib/libgcc.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/usr/gcc/lib/libgcc_eh.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/usr/gcc/lib/libgcc.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/usr/gcc/lib/libgcc_eh.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/usr/gcc/lib/crtend.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 access("/opt/musl/lib/crtn.rpo", R_OK) = -1 ENOENT (No such file or directory)
10237 open("/tmp/ccoxe2SL.ld", O_RDONLY) = 3
10237 ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7ffffd0ba820) = -1 ENOTTY (Inappropriate ioctl for device)
10237 brk(0x522000)                     = 0x522000
10237 read(3, "", 4096)                 = 0
10237 close(3)                          = 0
10237 unlink("/tmp/ccoxe2SL.ld")        = 0
10237 open("/tmp/cckn2ptY.le", O_RDONLY) = 3
10237 ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7ffffd0ba820) = -1 ENOTTY (Inappropriate ioctl for device)
10237 read(3, "/opt/musl/lib/libc.so: file not "..., 4096) = 71
10237 write(2, "/", 1)                  = 1
10237 write(2, "opt", 3)                = 3
10237 write(2, "/", 1)                  = 1
10237 write(2, "musl", 4)               = 4
10237 write(2, "/", 1)                  = 1
10237 write(2, "lib", 3)                = 3
10237 write(2, "/", 1)                  = 1
10237 write(2, "libc.so", 7)            = 7
10237 write(2, ":", 1)                  = 1
10237 write(2, " ", 1)                  = 1
10237 write(2, "file", 4)               = 4
10237 write(2, " ", 1)                  = 1
10237 write(2, "not", 3)                = 3
10237 write(2, " ", 1)                  = 1
10237 write(2, "recognized", 10)        = 10
10237 write(2, ":", 1)                  = 1
10237 write(2, " ", 1)                  = 1
10237 write(2, "File", 4)               = 4
10237 write(2, " ", 1)                  = 1
10237 write(2, "format", 6)             = 6
10237 write(2, " ", 1)                  = 1
10237 write(2, "not", 3)                = 3
10237 write(2, " ", 1)                  = 1
10237 write(2, "recognized", 10)        = 10
10237 write(2, "\n", 1)                 = 1
10237 read(3, "", 4096)                 = 0
10237 close(3)                          = 0
10237 unlink("/tmp/cckn2ptY.le")        = 0
10237 write(2, "collect2: ", 10)        = 10
10237 write(2, "ld returned ", 12)      = 12
10237 write(2, "1", 1)                  = 1
10237 write(2, " exit status", 12)      = 12
10237 write(2, "\n", 1)                 = 1
10237 lstat("/tmp/cc0cqiJm.c", {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
10237 unlink("/tmp/cc0cqiJm.c")         = 0
10237 lstat("/tmp/ccI7FXiz.o", {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
10237 unlink("/tmp/ccI7FXiz.o")         = 0
10237 open("/tmp/ccoxe2SL.ld", O_RDONLY) = -1 ENOENT (No such file or directory)
10237 lstat("/tmp/ccoxe2SL.ld", 0x7ffffd0ba820) = -1 ENOENT (No such file or directory)
10237 open("/tmp/cckn2ptY.le", O_RDONLY) = -1 ENOENT (No such file or directory)
10237 lstat("/tmp/cckn2ptY.le", 0x7ffffd0ba820) = -1 ENOENT (No such file or directory)
10237 lstat("a.out", 0x7ffffd0ba820)    = -1 ENOENT (No such file or directory)
10237 _exit(1)                          = ?
10236 <... wait4 resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0, NULL) = 10237
10236 --- SIGCHLD (Child exited) @ 0 (0) ---
10236 _exit(1)                          = ?

[-- Attachment #3: Type: TEXT/PLAIN, Size: 8911 bytes --]

GNU ld version 2.17
  Supported emulations:
   elf_x86_64
   elf_i386
   i386linux
using internal linker script:
==================================================
/* Script for -z combreloc: combine and sort reloc sections */
OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64",
	      "elf64-x86-64")
OUTPUT_ARCH(i386:x86-64)
ENTRY(_start)
SEARCH_DIR("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/lib64"); SEARCH_DIR("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/x86_64-unknown-linux/lib"); SEARCH_DIR("/home/landley/firmware-0.9.6/build/mini-native-x86_64/usr/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");
SECTIONS
{
  /* Read-only sections, merged into text segment: */
  PROVIDE (__executable_start = 0x400000); . = 0x400000 + SIZEOF_HEADERS;
  .interp         : { *(.interp) }
  .hash           : { *(.hash) }
  .dynsym         : { *(.dynsym) }
  .dynstr         : { *(.dynstr) }
  .gnu.version    : { *(.gnu.version) }
  .gnu.version_d  : { *(.gnu.version_d) }
  .gnu.version_r  : { *(.gnu.version_r) }
  .rel.dyn        :
    {
      *(.rel.init)
      *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*)
      *(.rel.fini)
      *(.rel.rodata .rel.rodata.* .rel.gnu.linkonce.r.*)
      *(.rel.data.rel.ro* .rel.gnu.linkonce.d.rel.ro.*)
      *(.rel.data .rel.data.* .rel.gnu.linkonce.d.*)
      *(.rel.tdata .rel.tdata.* .rel.gnu.linkonce.td.*)
      *(.rel.tbss .rel.tbss.* .rel.gnu.linkonce.tb.*)
      *(.rel.ctors)
      *(.rel.dtors)
      *(.rel.got)
      *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*)
      *(.rel.ldata .rel.ldata.* .rel.gnu.linkonce.l.*)
      *(.rel.lbss .rel.lbss.* .rel.gnu.linkonce.lb.*)
      *(.rel.lrodata .rel.lrodata.* .rel.gnu.linkonce.lr.*)
    }
  .rela.dyn       :
    {
      *(.rela.init)
      *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*)
      *(.rela.fini)
      *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*)
      *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*)
      *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*)
      *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*)
      *(.rela.ctors)
      *(.rela.dtors)
      *(.rela.got)
      *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*)
      *(.rela.ldata .rela.ldata.* .rela.gnu.linkonce.l.*)
      *(.rela.lbss .rela.lbss.* .rela.gnu.linkonce.lb.*)
      *(.rela.lrodata .rela.lrodata.* .rela.gnu.linkonce.lr.*)
    }
  .rel.plt        : { *(.rel.plt) }
  .rela.plt       : { *(.rela.plt) }
  .init           :
  {
    KEEP (*(.init))
  } =0x90909090
  .plt            : { *(.plt) }
  .text           :
  {
    *(.text .stub .text.* .gnu.linkonce.t.*)
    KEEP (*(.text.*personality*))
    /* .gnu.warning sections are handled specially by elf32.em.  */
    *(.gnu.warning)
  } =0x90909090
  .fini           :
  {
    KEEP (*(.fini))
  } =0x90909090
  PROVIDE (__etext = .);
  PROVIDE (_etext = .);
  PROVIDE (etext = .);
  .rodata         : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
  .rodata1        : { *(.rodata1) }
  .eh_frame_hdr : { *(.eh_frame_hdr) }
  .eh_frame       : ONLY_IF_RO { KEEP (*(.eh_frame)) }
  .gcc_except_table   : ONLY_IF_RO { *(.gcc_except_table .gcc_except_table.*) }
  /* Adjust the address for the data segment.  We want to adjust up to
     the same address within the page on the next page up.  */
  . = ALIGN (0x100000) - ((0x100000 - .) & (0x100000 - 1)); . = DATA_SEGMENT_ALIGN (0x100000, 0x1000);
  /* Exception handling  */
  .eh_frame       : ONLY_IF_RW { KEEP (*(.eh_frame)) }
  .gcc_except_table   : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
  /* Thread Local Storage sections  */
  .tdata	  : { *(.tdata .tdata.* .gnu.linkonce.td.*) }
  .tbss		  : { *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) }
  .preinit_array     :
  {
    PROVIDE_HIDDEN (__preinit_array_start = .);
    KEEP (*(.preinit_array))
    PROVIDE_HIDDEN (__preinit_array_end = .);
  }
  .init_array     :
  {
     PROVIDE_HIDDEN (__init_array_start = .);
     KEEP (*(SORT(.init_array.*)))
     KEEP (*(.init_array))
     PROVIDE_HIDDEN (__init_array_end = .);
  }
  .fini_array     :
  {
    PROVIDE_HIDDEN (__fini_array_start = .);
    KEEP (*(.fini_array))
    KEEP (*(SORT(.fini_array.*)))
    PROVIDE_HIDDEN (__fini_array_end = .);
  }
  .ctors          :
  {
    /* gcc uses crtbegin.o to find the start of
       the constructors, so we make sure it is
       first.  Because this is a wildcard, it
       doesn't matter if the user does not
       actually link against crtbegin.o; the
       linker won't look for a file to match a
       wildcard.  The wildcard also means that it
       doesn't matter which directory crtbegin.o
       is in.  */
    KEEP (*crtbegin*.o(.ctors))
    /* We don't want to include the .ctor section from
       the crtend.o file until after the sorted ctors.
       The .ctor section from the crtend file contains the
       end of ctors marker and it must be last */
    KEEP (*(EXCLUDE_FILE (*crtend*.o ) .ctors))
    KEEP (*(SORT(.ctors.*)))
    KEEP (*(.ctors))
  }
  .dtors          :
  {
    KEEP (*crtbegin*.o(.dtors))
    KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors))
    KEEP (*(SORT(.dtors.*)))
    KEEP (*(.dtors))
  }
  .jcr            : { KEEP (*(.jcr)) }
  .data.rel.ro : { *(.data.rel.ro.local* .gnu.linkonce.d.rel.ro.local.*) *(.data.rel.ro* .gnu.linkonce.d.rel.ro.*) }
  .dynamic        : { *(.dynamic) }
  .got            : { *(.got) }
  . = DATA_SEGMENT_RELRO_END (24, .);
  .got.plt        : { *(.got.plt) }
  .data           :
  {
    *(.data .data.* .gnu.linkonce.d.*)
    KEEP (*(.gnu.linkonce.d.*personality*))
    SORT(CONSTRUCTORS)
  }
  .data1          : { *(.data1) }
  _edata = .; PROVIDE (edata = .);
  __bss_start = .;
  .bss            :
  {
   *(.dynbss)
   *(.bss .bss.* .gnu.linkonce.b.*)
   *(COMMON)
   /* Align here to ensure that the .bss section occupies space up to
      _end.  Align after .bss to ensure correct alignment even if the
      .bss section disappears because there are no input sections.
      FIXME: Why do we need it? When there is no .bss section, we don't
      pad the .data section.  */
   . = ALIGN(. != 0 ? 64 / 8 : 1);
  }
  . = ALIGN(64 / 8);
  .lbss   :
  {
    *(.dynlbss)
    *(.lbss .lbss.* .gnu.linkonce.lb.*)
    *(LARGE_COMMON)
  }
  .lrodata   ALIGN(0x100000) + (. & (0x100000 - 1)) :
  {
    *(.lrodata .lrodata.* .gnu.linkonce.lr.*)
  }
  .ldata   ALIGN(0x100000) + (. & (0x100000 - 1)) :
  {
    *(.ldata .ldata.* .gnu.linkonce.l.*)
    . = ALIGN(. != 0 ? 64 / 8 : 1);
  }
  . = ALIGN(64 / 8);
  _end = .; PROVIDE (end = .);
  . = DATA_SEGMENT_END (.);
  /* Stabs debugging sections.  */
  .stab          0 : { *(.stab) }
  .stabstr       0 : { *(.stabstr) }
  .stab.excl     0 : { *(.stab.excl) }
  .stab.exclstr  0 : { *(.stab.exclstr) }
  .stab.index    0 : { *(.stab.index) }
  .stab.indexstr 0 : { *(.stab.indexstr) }
  .comment       0 : { *(.comment) }
  /* DWARF debug sections.
     Symbols in the DWARF debugging sections are relative to the beginning
     of the section so we begin them at 0.  */
  /* DWARF 1 */
  .debug          0 : { *(.debug) }
  .line           0 : { *(.line) }
  /* GNU DWARF 1 extensions */
  .debug_srcinfo  0 : { *(.debug_srcinfo) }
  .debug_sfnames  0 : { *(.debug_sfnames) }
  /* DWARF 1.1 and DWARF 2 */
  .debug_aranges  0 : { *(.debug_aranges) }
  .debug_pubnames 0 : { *(.debug_pubnames) }
  /* DWARF 2 */
  .debug_info     0 : { *(.debug_info .gnu.linkonce.wi.*) }
  .debug_abbrev   0 : { *(.debug_abbrev) }
  .debug_line     0 : { *(.debug_line) }
  .debug_frame    0 : { *(.debug_frame) }
  .debug_str      0 : { *(.debug_str) }
  .debug_loc      0 : { *(.debug_loc) }
  .debug_macinfo  0 : { *(.debug_macinfo) }
  /* SGI/MIPS DWARF 2 extensions */
  .debug_weaknames 0 : { *(.debug_weaknames) }
  .debug_funcnames 0 : { *(.debug_funcnames) }
  .debug_typenames 0 : { *(.debug_typenames) }
  .debug_varnames  0 : { *(.debug_varnames) }
  /DISCARD/ : { *(.note.GNU-stack) }
}


==================================================
attempt to open /opt/musl/lib/crt1.o/opt/musl/lib/libc.so: file not recognized: File format not recognized
 succeeded
/opt/musl/lib/crt1.o
attempt to open /opt/musl/lib/crti.o succeeded
/opt/musl/lib/crti.o
attempt to open /usr/gcc/lib/crtbegin.o succeeded
/usr/gcc/lib/crtbegin.o
attempt to open t.o succeeded
t.o
attempt to open /usr/gcc/lib/libgcc.a succeeded
attempt to open /usr/gcc/lib/libgcc_eh.a succeeded
attempt to open /opt/musl/lib/libc.so succeeded
opened script file /opt/musl/lib/libc.so

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-14  9:06           ` Jens
@ 2013-08-14 14:27             ` Rich Felker
  2013-08-14 14:49               ` Szabolcs Nagy
  2013-08-14 14:51               ` Jens
  0 siblings, 2 replies; 22+ messages in thread
From: Rich Felker @ 2013-08-14 14:27 UTC (permalink / raw)
  To: musl

On Wed, Aug 14, 2013 at 11:06:29AM +0200, Jens wrote:
> 
> >>>ld should be able to handle it (eg file libc.so, readelf -a
> >>>libc.so, nm -D libc.so, or just ./libc.so)
> >>>
> >>>since you use landley's weird toolchain it may be a
> >>>problem with the old binutils
> >>
> >>Thanks! You nailed it in one. If I use newer binutils it works.
> >>
> >>(In response to the wrapper problem, I let REALGCC point to the real
> >>gcc and not the wrapper).
> >>
> >>Thanks again,
> >>Jens
> >>
> >>>
> >>>>bash-4.1# musl-gcc -c t.c
> >>>>bash-4.1# musl-gcc t.o
> >>>>/opt/musl/lib/libc.so: file not recognized: File format not recognized
> >>>>collect2: ld returned 1 exit status
> >>>
> >
> >It would be nice to get to the bottom of this, still. It's not my
> >intent to require new binutils for linking against musl. Any idea why
> >it might have been failing? Are there verbosity level options to ld
> >that might help track this down?
> 
> strace attached as trace.txt
> 
> bash-4.1# strace -f -o /tmp/trace.txt musl-gcc t.o
> /opt/musl/lib/libc.so: file not recognized: File format not recognized
> collect2: ld returned 1 exit status
> 
> verbose ld output attached as ld.txt
> 
> bash-4.1# ld --verbose -dynamic-linker /lib/ld-musl-x86_64.so.1
> -nostdlib /opt/musl/lib/crt1.o /opt/musl/lib/crti.o
> /usr/gcc/lib/crtbegin.o -L/opt/musl/lib -L /lib/. t.o
> /usr/gcc/lib/libgcc.a /usr/gcc/lib/libgcc_eh.a -lc
> /usr/gcc/lib/libgcc.a /usr/gcc/lib/libgcc_eh.a &> /tmp/ld.txt
> 
> >
> >By the way, how old were those binutils? I saw "firmware Linux"
> >mentioned, which was the predecessor of Aboriginal, so unless that's
> >just still landley's dir name, maybe these are a lot older than I
> >thought..
> 
> bash-4.1# ld -V
> GNU ld version 2.17
>   Supported emulations:
>    elf_x86_64
>    elf_i386
>    i386linux
> 
> Hope this helps.

Thanks. I don't see anything obviously wrong in the trace or verbose
output. Unless /lib is where you have musl installed (which doesn't
seem to be the case, the -L /lib/. probably should not be there, but
it doesn't seem related to the problem. Have you run the file command
and/or readelf -a on libc.so as a sanity check? Perhaps something
about the toolchain or existing wrapper messed up the link of libc.so.

Rich


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-14 14:27             ` Rich Felker
@ 2013-08-14 14:49               ` Szabolcs Nagy
  2013-08-14 14:51                 ` Rich Felker
  2013-08-15 21:19                 ` Rob Landley
  2013-08-14 14:51               ` Jens
  1 sibling, 2 replies; 22+ messages in thread
From: Szabolcs Nagy @ 2013-08-14 14:49 UTC (permalink / raw)
  To: musl

* Rich Felker <dalias@aerifal.cx> [2013-08-14 10:27:10 -0400]:
> On Wed, Aug 14, 2013 at 11:06:29AM +0200, Jens wrote:
> > bash-4.1# ld -V
> > GNU ld version 2.17
> >   Supported emulations:
> >    elf_x86_64
> >    elf_i386
> >    i386linux
> > 
> > Hope this helps.
> 
> Thanks. I don't see anything obviously wrong in the trace or verbose
> output. Unless /lib is where you have musl installed (which doesn't
> seem to be the case, the -L /lib/. probably should not be there, but
> it doesn't seem related to the problem. Have you run the file command
> and/or readelf -a on libc.so as a sanity check? Perhaps something
> about the toolchain or existing wrapper messed up the link of libc.so.
> 

wasn't there an issue that the last gplv2 binutils version
failed to produce a working libc.so with -Bsymbolic-functions?


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-14 14:27             ` Rich Felker
  2013-08-14 14:49               ` Szabolcs Nagy
@ 2013-08-14 14:51               ` Jens
  1 sibling, 0 replies; 22+ messages in thread
From: Jens @ 2013-08-14 14:51 UTC (permalink / raw)
  To: musl



On Wed, 14 Aug 2013, Rich Felker wrote:

> On Wed, Aug 14, 2013 at 11:06:29AM +0200, Jens wrote:
>>
>>>>> ld should be able to handle it (eg file libc.so, readelf -a
>>>>> libc.so, nm -D libc.so, or just ./libc.so)
>>>>>
>>>>> since you use landley's weird toolchain it may be a
>>>>> problem with the old binutils
>>>>
>>>> Thanks! You nailed it in one. If I use newer binutils it works.
>>>>
>>>> (In response to the wrapper problem, I let REALGCC point to the real
>>>> gcc and not the wrapper).
>>>>
>>>> Thanks again,
>>>> Jens
>>>>
>>>>>
>>>>>> bash-4.1# musl-gcc -c t.c
>>>>>> bash-4.1# musl-gcc t.o
>>>>>> /opt/musl/lib/libc.so: file not recognized: File format not recognized
>>>>>> collect2: ld returned 1 exit status
>>>>>
>>>
>>> It would be nice to get to the bottom of this, still. It's not my
>>> intent to require new binutils for linking against musl. Any idea why
>>> it might have been failing? Are there verbosity level options to ld
>>> that might help track this down?
>>
>> strace attached as trace.txt
>>
>> bash-4.1# strace -f -o /tmp/trace.txt musl-gcc t.o
>> /opt/musl/lib/libc.so: file not recognized: File format not recognized
>> collect2: ld returned 1 exit status
>>
>> verbose ld output attached as ld.txt
>>
>> bash-4.1# ld --verbose -dynamic-linker /lib/ld-musl-x86_64.so.1
>> -nostdlib /opt/musl/lib/crt1.o /opt/musl/lib/crti.o
>> /usr/gcc/lib/crtbegin.o -L/opt/musl/lib -L /lib/. t.o
>> /usr/gcc/lib/libgcc.a /usr/gcc/lib/libgcc_eh.a -lc
>> /usr/gcc/lib/libgcc.a /usr/gcc/lib/libgcc_eh.a &> /tmp/ld.txt
>>
>>>
>>> By the way, how old were those binutils? I saw "firmware Linux"
>>> mentioned, which was the predecessor of Aboriginal, so unless that's
>>> just still landley's dir name, maybe these are a lot older than I
>>> thought..
>>
>> bash-4.1# ld -V
>> GNU ld version 2.17
>>   Supported emulations:
>>    elf_x86_64
>>    elf_i386
>>    i386linux
>>
>> Hope this helps.
>
> Thanks. I don't see anything obviously wrong in the trace or verbose
> output. Unless /lib is where you have musl installed (which doesn't
> seem to be the case, the -L /lib/. probably should not be there, but
> it doesn't seem related to the problem. Have you run the file command
> and/or readelf -a on libc.so as a sanity check? Perhaps something
> about the toolchain or existing wrapper messed up the link of libc.so.

bash-4.1# ls -l /lib/ld-musl-x86_64.so.1
lrwxrwxrwx    1 0        0              21 Aug 13 22:28 
/lib/ld-musl-x86_64.so.1 -> /opt/musl/lib/libc.so
bash-4.1# ls -l /opt/musl/lib/libc.so
-rwxr-xr-x    1 0        0         2718991 Sep 23  2012 
/opt/musl/lib/libc.so

readelf -a /opt/musl/lib/libc.so
outputs a _lot_ of stuff that I cannot interpret.

bash-4.1# file /opt/musl/lib/libc.so
/opt/musl/lib/libc.so: ELF 64-bit LSB shared object, x86-64, version 1 
(SYSV), dynamically linked, not stripped

If I install newer binutils (musl + gcc is the same), the linking will 
succeed.

Im happy that I have a workaround (or actually two, since I can link 
statically).

Cheers,
Jens

>
> Rich
>


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-14 14:49               ` Szabolcs Nagy
@ 2013-08-14 14:51                 ` Rich Felker
  2013-08-14 20:47                   ` Jens
  2013-08-15 21:19                 ` Rob Landley
  1 sibling, 1 reply; 22+ messages in thread
From: Rich Felker @ 2013-08-14 14:51 UTC (permalink / raw)
  To: musl

On Wed, Aug 14, 2013 at 04:49:55PM +0200, Szabolcs Nagy wrote:
> * Rich Felker <dalias@aerifal.cx> [2013-08-14 10:27:10 -0400]:
> > On Wed, Aug 14, 2013 at 11:06:29AM +0200, Jens wrote:
> > > bash-4.1# ld -V
> > > GNU ld version 2.17
> > >   Supported emulations:
> > >    elf_x86_64
> > >    elf_i386
> > >    i386linux
> > > 
> > > Hope this helps.
> > 
> > Thanks. I don't see anything obviously wrong in the trace or verbose
> > output. Unless /lib is where you have musl installed (which doesn't
> > seem to be the case, the -L /lib/. probably should not be there, but
> > it doesn't seem related to the problem. Have you run the file command
> > and/or readelf -a on libc.so as a sanity check? Perhaps something
> > about the toolchain or existing wrapper messed up the link of libc.so.
> > 
> 
> wasn't there an issue that the last gplv2 binutils version
> failed to produce a working libc.so with -Bsymbolic-functions?

My recollection was that it failed to support -Bsymbolic-functions at
all and would produce an error when encountering it, so this makes me
wonder how generation of libc.so succeeded at all...

Rich


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-14 14:51                 ` Rich Felker
@ 2013-08-14 20:47                   ` Jens
  2013-08-14 20:58                     ` Rich Felker
  0 siblings, 1 reply; 22+ messages in thread
From: Jens @ 2013-08-14 20:47 UTC (permalink / raw)
  To: musl



On Wed, 14 Aug 2013, Rich Felker wrote:

> On Wed, Aug 14, 2013 at 04:49:55PM +0200, Szabolcs Nagy wrote:
>> * Rich Felker <dalias@aerifal.cx> [2013-08-14 10:27:10 -0400]:
>>> On Wed, Aug 14, 2013 at 11:06:29AM +0200, Jens wrote:
>>>> bash-4.1# ld -V
>>>> GNU ld version 2.17
>>>>   Supported emulations:
>>>>    elf_x86_64
>>>>    elf_i386
>>>>    i386linux
>>>>
>>>> Hope this helps.
>>>
>>> Thanks. I don't see anything obviously wrong in the trace or verbose
>>> output. Unless /lib is where you have musl installed (which doesn't
>>> seem to be the case, the -L /lib/. probably should not be there, but
>>> it doesn't seem related to the problem. Have you run the file command
>>> and/or readelf -a on libc.so as a sanity check? Perhaps something
>>> about the toolchain or existing wrapper messed up the link of libc.so.
>>>
>>
>> wasn't there an issue that the last gplv2 binutils version
>> failed to produce a working libc.so with -Bsymbolic-functions?
>
> My recollection was that it failed to support -Bsymbolic-functions at
> all and would produce an error when encountering it, so this makes me
> wonder how generation of libc.so succeeded at all...

The musl libc in this case is built with binutils-2.20.1, since the older 
binutils (2.17) didnt work. You helped me with this exact problem some 
months ago.

I have a build-environment where I specify all the dependencies for each 
build. binutils-2.20.1 is then a dependency for musl (where binutils 2.17 
is the default).

So for my use-case I can always specify a later binutils as a dependency 
for all musl builds. Though dynamic linking is a low priority for me, 
since all resulting binaries must be statically linked.

Regards,
Jens

>
> Rich
>


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-14 20:47                   ` Jens
@ 2013-08-14 20:58                     ` Rich Felker
  0 siblings, 0 replies; 22+ messages in thread
From: Rich Felker @ 2013-08-14 20:58 UTC (permalink / raw)
  To: musl

On Wed, Aug 14, 2013 at 10:47:08PM +0200, Jens wrote:
> >My recollection was that it failed to support -Bsymbolic-functions at
> >all and would produce an error when encountering it, so this makes me
> >wonder how generation of libc.so succeeded at all...
> 
> The musl libc in this case is built with binutils-2.20.1, since the
> older binutils (2.17) didnt work. You helped me with this exact
> problem some months ago.
> 
> I have a build-environment where I specify all the dependencies for
> each build. binutils-2.20.1 is then a dependency for musl (where
> binutils 2.17 is the default).
> 
> So for my use-case I can always specify a later binutils as a
> dependency for all musl builds. Though dynamic linking is a low
> priority for me, since all resulting binaries must be statically
> linked.

OK. It may be that binutils-2.20.1, at least with the options we're
using, is somehow tagging the libc.so file as incompatible with older
binutils. This would be unfortunate, and it's an issue I'd like to
resolve if that's what it is. I'll see if I can reproduce it or if
someone else (preferably someone on x86_64) can do so.

Rich


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 14:53     ` Szabolcs Nagy
  2013-08-13 16:00       ` Rich Felker
  2013-08-13 17:14       ` Jens
@ 2013-08-15  2:17       ` Rob Landley
  2 siblings, 0 replies; 22+ messages in thread
From: Rob Landley @ 2013-08-15  2:17 UTC (permalink / raw)
  To: musl; +Cc: Szabolcs Nagy, Jens

On 08/13/2013 09:53:00 AM, Szabolcs Nagy wrote:
> * Jens <jensl@laas.mine.nu> [2013-08-13 13:18:27 +0200]:
> > On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
> > >
> > >you didn't tell us the problem
> > >
> > >at least show a crashing dynamic linked executable
> > >with straced loader and musl ldd output
> >
> > Sorry. Its actually linking the binary that doesnt work.
> >
> 
> ah ok i did not see that
> 
> i'd check libc.so if there is some obvious error
> ld should be able to handle it
> (eg file libc.so, readelf -a libc.so, nm -D libc.so, or just  
> ./libc.so)
> 
> since you use landley's weird toolchain it may be a
> problem with the old binutils

I do test build musl with that toolchain from time to time, and I've  
modified the binutils in it to support what musl needs before. I'm  
doing a fresh test build under the most recent Aboriginal x86-64 system  
image in another window, but this netbook is slow and qemu is slower...

> > bash-4.1# musl-gcc -c t.c
> > bash-4.1# musl-gcc t.o

I note that "bash-4.1" is not the version in my system images but it  
_is_ in the Linux From Scratch images. He didn't say what architecture  
he was building for, but I haven't made it to the end of the thread  
yet...

Rob

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 16:00       ` Rich Felker
@ 2013-08-15  3:14         ` Rob Landley
  0 siblings, 0 replies; 22+ messages in thread
From: Rob Landley @ 2013-08-15  3:14 UTC (permalink / raw)
  To: musl; +Cc: musl

On 08/13/2013 11:00:52 AM, Rich Felker wrote:
> On Tue, Aug 13, 2013 at 04:53:00PM +0200, Szabolcs Nagy wrote:
> > * Jens <jensl@laas.mine.nu> [2013-08-13 13:18:27 +0200]:
> > > On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
> > > >
> > > >you didn't tell us the problem
> > > >
> > > >at least show a crashing dynamic linked executable
> > > >with straced loader and musl ldd output
> > >
> > > Sorry. Its actually linking the binary that doesnt work.
> > >
> >
> > ah ok i did not see that
> >
> > i'd check libc.so if there is some obvious error
> > ld should be able to handle it
> > (eg file libc.so, readelf -a libc.so, nm -D libc.so, or just  
> ./libc.so)
> >
> > since you use landley's weird toolchain it may be a
> > problem with the old binutils
> 
> Indeed, that toolchain is probably already using its own gcc wrapper
> around the real gcc located at a different path. Neither wrapper is
> sufficiently transparent to allow another wrapper around it to
> function 100% correctly, so I would guess this is your problem. See if
> you can find the location of the real gcc binary and have musl-gcc run
> that, or perhaps just get a compiler from the musl-cross package or
> compile your own toolchain.

You can trivially disable the aboriginal wrapper by replacing x86_64-cc  
with rawcc, but I _thought_ this was working at one point...

Rob

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 10:39 problems with dynamic linking since 0.9.1 Jens
  2013-08-13 11:07 ` Szabolcs Nagy
@ 2013-08-15  3:29 ` Rob Landley
  1 sibling, 0 replies; 22+ messages in thread
From: Rob Landley @ 2013-08-15  3:29 UTC (permalink / raw)
  To: musl; +Cc: Jens

On 08/13/2013 05:39:52 AM, Jens wrote:
> 
> Hello!
> 
> Dynamic linking with musl has stopped working for me since musl 0.9.1.
> I havent tested all versions but 0.9.6 and 0.9.12 does not work.
> 
> Im still using that strange uclibc environment where gcc is itself a
> wrapper that calls rawgcc.

That would be aboriginal linux, and it worked for me last I checked...

(x86_64:1) /home # wget  
http://www.musl-libc.org/releases/musl-0.9.12.tar.gz
Connecting to www.musl-libc.org (216.12.86.13:80)
(x86_64:1) /home # tar xzf musl-0.9.12.tar.gz
(x86_64:1) /home # cd musl-0.9.12
(x86_64:1) /home/musl-0.9.12 # ./configure --prefix=/home/musl
checking for C compiler... gcc
checking whether compiler is gcc... yes
...
(x86_64:1) /home/musl-0.9.12 # make
...
(x86_64:1) /home/musl-0.9.12 # make install
...
(x86_64:1) /home/musl-0.9.12 # cd /home/musl/bin
(x86_64:1) /home/musl/bin # ./musl-gcc /usr/src/thread-hello2.c  
-lpthread
(x86_64:1) /home/musl/bin # ./a.out
Hello world!
(x86_64:1) /home/musl/bin # ldd a.out
	libpthread.so.0 => /lib/libpthread.so.0 (0x00000000)
	libc.so.0 => /lib/libc.so.0 (0x00000000)
	ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x00000000)
	not a dynamic executable

Hmmm, looks like my wrapper is overriding the musl one. Actually that  
makes sense, mine is designed to be a Very Large Hammer. Let's see...

# REALGCC=/usr/tools/bin/rawcc ./musl-gcc /usr/src/thread-hello2.c  
-lpthread

Nope, then it can't find cc1.

# PATH=$PATH:/usr/tools/bin REALGCC=rawcc ./musl-gcc  
/usr/src/thread-hello2.c -lpthread
ld: crtbegin.o: No such file: No such file or directory

Sigh. There's a _reason_ I'm rewriting my wrapper to be musl-aware...

Jens: lemme get back to you this weekend, ok?

Alas, gcc wrappers are _hard_...

Rob

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-13 17:14       ` Jens
  2013-08-13 18:03         ` Rich Felker
@ 2013-08-15  3:43         ` Rob Landley
  2013-08-15  9:05           ` Jens
  1 sibling, 1 reply; 22+ messages in thread
From: Rob Landley @ 2013-08-15  3:43 UTC (permalink / raw)
  To: musl; +Cc: Jens

On 08/13/2013 12:14:42 PM, Jens wrote:
> 
> On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
> 
>> * Jens <jensl@laas.mine.nu> [2013-08-13 13:18:27 +0200]:
>>> On Tue, 13 Aug 2013, Szabolcs Nagy wrote:
>>>> 
>>>> you didn't tell us the problem
>>>> 
>>>> at least show a crashing dynamic linked executable
>>>> with straced loader and musl ldd output
>>> 
>>> Sorry. Its actually linking the binary that doesnt work.
>>> 
>> 
>> ah ok i did not see that
>> 
>> i'd check libc.so if there is some obvious error
>> ld should be able to handle it
>> (eg file libc.so, readelf -a libc.so, nm -D libc.so, or just  
>> ./libc.so)
>> 
>> since you use landley's weird toolchain it may be a
>> problem with the old binutils
> 
> Thanks! You nailed it in one. If I use newer binutils it works.
> 
> (In response to the wrapper problem, I let REALGCC point to the real  
> gcc and not the wrapper).

It's not finding crtbegin.o when I do that, and the fact that  
(according to strace), gcc thinks:

access("/usr/x86_64-unknown-linux/bin/../lib/gcc/x86_64-unknown-linux/4.2.1/../../../../lib64/crtbegin.o",  
R_OK) = -1 ENOENT (No such file or directory)

Is a good place to look for it is one of the REASONS I wrote a wrapper  
that goes "--nostdinc --nostdlib" and then starts again.

("I say we take off and nuke the entire site from orbit. Only way to be  
sure.")

However, it sounds like you're using a stale version of the aboriginal  
build environment because I upgraded to a binutils that can build musl  
(and yes actually tested it at one point) several months ago...

Rob

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-15  3:43         ` Rob Landley
@ 2013-08-15  9:05           ` Jens
  2013-08-16  8:28             ` Rob Landley
  0 siblings, 1 reply; 22+ messages in thread
From: Jens @ 2013-08-15  9:05 UTC (permalink / raw)
  To: musl



>> (In response to the wrapper problem, I let REALGCC point to the real gcc 
>> and not the wrapper).
>
> It's not finding crtbegin.o when I do that, and the fact that (according to 
> strace), gcc thinks:
>
> access("/usr/x86_64-unknown-linux/bin/../lib/gcc/x86_64-unknown-linux/4.2.1/../../../../lib64/crtbegin.o", 
> R_OK) = -1 ENOENT (No such file or directory)
>
> Is a good place to look for it is one of the REASONS I wrote a wrapper that 
> goes "--nostdinc --nostdlib" and then starts again.
>
> ("I say we take off and nuke the entire site from orbit. Only way to be 
> sure.")
>
> However, it sounds like you're using a stale version of the aboriginal build 
> environment because I upgraded to a binutils that can build musl (and yes 
> actually tested it at one point) several months ago...

The build environment is older than aboriginal.
It is this one 
http://uclibc.org/downloads/binaries/0.9.30.1/mini-native-x86_64.tar.bz2

So I guess its a bit long in the tooth.

I dont want you guys to spend your valuable time chasing bugs if its just 
me that sees them.

Regarding the bash version, I use the above environment, but slightly 
upgraded (bash, tar).

I set REALGCC to rawgcc, and I also needed to change the musl gcc.spec 
file, to find all object files, patch I use below (linewrap damaged):

bash-4.1# more all/musl-0.9.6-1/musl-gcc.specs.pat
--- opt/musl/lib/musl-gcc.specs.orig        Fri Sep 21 07:04:50 2012
+++ opt/musl/lib/musl-gcc.specs        Fri Sep 21 07:12:34 2012
@@ -10,13 +10,13 @@
  -L/opt/musl/lib -L .%s

  *libgcc:
-libgcc.a%s %:if-exists(libgcc_eh.a%s)
+/usr/gcc/lib/libgcc.a%s %:if-exists(/usr/gcc/lib/libgcc_eh.a%s)

  *startfile:
-%{!shared: /opt/musl/lib/%{pie:S}crt1.o} /opt/musl/lib/crti.o 
%{shared|pie:crtbeginS.o%s;:crtbegin.o%s}
+%{!shared: /opt/musl/lib/%{pie:S}crt1.o} /opt/musl/lib/crti.o 
%{shared|pie:crtbeginS.o%s;:/usr/gcc/lib/crtbegin.o%s}

  *endfile:
-%{shared|pie:crtendS.o%s;:crtend.o%s} /opt/musl/lib/crtn.o
+%{shared|pie:crtendS.o%s;:/usr/gcc/lib/crtend.o%s} /opt/musl/lib/crtn.o

  *link:
  -dynamic-linker /lib/ld-musl-x86_64.so.1 -nostdlib %{shared:-shared} 
%{static:-static} %{rdynamic:-export-dynamic}

Thanks,
Jens

>
> Rob


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-14 14:49               ` Szabolcs Nagy
  2013-08-14 14:51                 ` Rich Felker
@ 2013-08-15 21:19                 ` Rob Landley
  1 sibling, 0 replies; 22+ messages in thread
From: Rob Landley @ 2013-08-15 21:19 UTC (permalink / raw)
  To: musl; +Cc: musl

On 08/14/2013 09:49:55 AM, Szabolcs Nagy wrote:
> * Rich Felker <dalias@aerifal.cx> [2013-08-14 10:27:10 -0400]:
> > On Wed, Aug 14, 2013 at 11:06:29AM +0200, Jens wrote:
> > > bash-4.1# ld -V
> > > GNU ld version 2.17
> > >   Supported emulations:
> > >    elf_x86_64
> > >    elf_i386
> > >    i386linux
> > >
> > > Hope this helps.
> >
> > Thanks. I don't see anything obviously wrong in the trace or verbose
> > output. Unless /lib is where you have musl installed (which doesn't
> > seem to be the case, the -L /lib/. probably should not be there, but
> > it doesn't seem related to the problem. Have you run the file  
> command
> > and/or readelf -a on libc.so as a sanity check? Perhaps something
> > about the toolchain or existing wrapper messed up the link of  
> libc.so.
> >
> 
> wasn't there an issue that the last gplv2 binutils version
> failed to produce a working libc.so with -Bsymbolic-functions?

http://landley.net/hg/aboriginal/rev/1545

Rob

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: problems with dynamic linking since 0.9.1
  2013-08-15  9:05           ` Jens
@ 2013-08-16  8:28             ` Rob Landley
  0 siblings, 0 replies; 22+ messages in thread
From: Rob Landley @ 2013-08-16  8:28 UTC (permalink / raw)
  To: musl; +Cc: musl

On 08/15/2013 04:05:54 AM, Jens wrote:
> 
> 
>>> (In response to the wrapper problem, I let REALGCC point to the  
>>> real gcc and not the wrapper).
>> 
>> It's not finding crtbegin.o when I do that, and the fact that  
>> (according to strace), gcc thinks:
>> 
>> access("/usr/x86_64-unknown-linux/bin/../lib/gcc/x86_64-unknown-linux/4.2.1/../../../../lib64/crtbegin.o",  
>> R_OK) = -1 ENOENT (No such file or directory)
>> 
>> Is a good place to look for it is one of the REASONS I wrote a  
>> wrapper that goes "--nostdinc --nostdlib" and then starts again.
>> 
>> ("I say we take off and nuke the entire site from orbit. Only way to  
>> be sure.")
>> 
>> However, it sounds like you're using a stale version of the  
>> aboriginal build environment because I upgraded to a binutils that  
>> can build musl (and yes actually tested it at one point) several  
>> months ago...
> 
> The build environment is older than aboriginal.
> It is this one  
> http://uclibc.org/downloads/binaries/0.9.30.1/mini-native-x86_64.tar.bz2
> 
> So I guess its a bit long in the tooth.

Wow. When did I rename mini-native to root-filesystem?

changeset:   711:20ba34b54140
user:        Rob Landley <rob@landley.net>
date:        Thu Apr 09 23:53:05 2009 -0500
summary:     Rename mini-native.sh to root-filesystem.sh, since that's  
what it builds.

So at least 4 years old, yeah.

If you just want a quick and dirty "get something running", I have  
linux from scratch builds (same uClibc based toolchain) at:

http://landley.net/aboriginal/downloads/old/binaries/1.2.3

That's linux from scratch built on top of the aboriginal linux build  
environment. Those are only around 6 months old, from after the  
binutils switch.

> I set REALGCC to rawgcc, and I also needed to change the musl  
> gcc.spec file,
> to find all object files, patch I use below (linewrap damaged):
> 
> bash-4.1# more all/musl-0.9.6-1/musl-gcc.specs.pat
> --- opt/musl/lib/musl-gcc.specs.orig        Fri Sep 21 07:04:50 2012
> +++ opt/musl/lib/musl-gcc.specs        Fri Sep 21 07:12:34 2012
> @@ -10,13 +10,13 @@
>  -L/opt/musl/lib -L .%s
> 
>  *libgcc:
> -libgcc.a%s %:if-exists(libgcc_eh.a%s)
> +/usr/gcc/lib/libgcc.a%s %:if-exists(/usr/gcc/lib/libgcc_eh.a%s)
> 
>  *startfile:
> -%{!shared: /opt/musl/lib/%{pie:S}crt1.o} /opt/musl/lib/crti.o  
> %{shared|pie:crtbeginS.o%s;:crtbegin.o%s}
> +%{!shared: /opt/musl/lib/%{pie:S}crt1.o} /opt/musl/lib/crti.o  
> %{shared|pie:crtbeginS.o%s;:/usr/gcc/lib/crtbegin.o%s}
> 
>  *endfile:
> -%{shared|pie:crtendS.o%s;:crtend.o%s} /opt/musl/lib/crtn.o
> +%{shared|pie:crtendS.o%s;:/usr/gcc/lib/crtend.o%s}  
> /opt/musl/lib/crtn.o
> 
>  *link:
>  -dynamic-linker /lib/ld-musl-x86_64.so.1 -nostdlib %{shared:-shared}  
> %{static:-static} %{rdynamic:-export-dynamic}
> 
> Thanks,
> Jens

Good to know.  Thanks.

Rob

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: problems with dynamic linking since 0.9.1
@ 2013-08-14 22:26 writeonce
  0 siblings, 0 replies; 22+ messages in thread
From: writeonce @ 2013-08-14 22:26 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: text/html, Size: 2502 bytes --]

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2013-08-16  8:28 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-08-13 10:39 problems with dynamic linking since 0.9.1 Jens
2013-08-13 11:07 ` Szabolcs Nagy
2013-08-13 11:18   ` Jens
2013-08-13 14:53     ` Szabolcs Nagy
2013-08-13 16:00       ` Rich Felker
2013-08-15  3:14         ` Rob Landley
2013-08-13 17:14       ` Jens
2013-08-13 18:03         ` Rich Felker
2013-08-14  9:06           ` Jens
2013-08-14 14:27             ` Rich Felker
2013-08-14 14:49               ` Szabolcs Nagy
2013-08-14 14:51                 ` Rich Felker
2013-08-14 20:47                   ` Jens
2013-08-14 20:58                     ` Rich Felker
2013-08-15 21:19                 ` Rob Landley
2013-08-14 14:51               ` Jens
2013-08-15  3:43         ` Rob Landley
2013-08-15  9:05           ` Jens
2013-08-16  8:28             ` Rob Landley
2013-08-15  2:17       ` Rob Landley
2013-08-15  3:29 ` Rob Landley
2013-08-14 22:26 writeonce

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).