|
Message-ID: <20191224150331.GX1666@brightrain.aerifal.cx> Date: Tue, 24 Dec 2019 10:03:31 -0500 From: Rich Felker <dalias@...c.org> To: Youren Shen <shenyouren@...il.com> Cc: musl@...ts.openwall.com Subject: Re: [BUG] Force to use a dynamic linker in musl-clang wapper cause a crash for static-pie c++ programs. On Tue, Dec 24, 2019 at 10:38:49PM +0800, Youren Shen wrote: > Hey, there, > Recently I'm trying to build a non-gnu toolchain with musl, clang, llvm, > libc++, compiler-rt. While static-pie feature is very useful in our > project, musl-clang force to link a dynamic linker into the binary. This > behavior will cause a crash in c++ programs with compiler-rt and libc++. > For more details and reproduction of this bug, you can read my previous > email to llvm-dev mail lists.[1] > I spend a few days to find the reason -- in function _dlstart_c, the > program will get a "base" of relocation in /lib/ld-musl-x86_64.so.1, which > is not right when it tries to relocate .rel.dyn section in the binary. > Overall, the static-pie program does not need a dynamic linker at all. So > maybe we should remove this argument in wrapper when static-pie is enabled. > > Thank you very much. > > [1]. https://groups.google.com/forum/#!msg/llvm-dev/XPrSPqD2zjM/YtH6Fi2YAgAJ I don't think the wrappers (gcc or clang one) have been updated with logic for static pie since it was added, and I'm not sure how easy it is to add. I'd welcome patches for review, though. Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.