From: Rich Felker <dalias@aerifal.cx>
To: musl@lists.openwall.com
Subject: Re: problems with dynamic linking since 0.9.1
Date: Wed, 14 Aug 2013 10:27:10 -0400 [thread overview]
Message-ID: <20130814142710.GN221@brightrain.aerifal.cx> (raw)
In-Reply-To: <alpine.LNX.2.10.1308141057111.10050@laas.mine.nu>
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
next prev parent reply other threads:[~2013-08-14 14:27 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-13 10:39 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 [this message]
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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130814142710.GN221@brightrain.aerifal.cx \
--to=dalias@aerifal.cx \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).