l...@gnu.org (Ludovic Courtès) writes: > Mark H Weaver <m...@netris.org> skribis: > >> Mark H Weaver <m...@netris.org> writes: >> >>> Any suggestions on how best to fix this? My first crude idea is to >>> simply remove the "-lgcc_s" from %gcc-static. >> >> For now, this is the approach I took, in commit 5336e4c74. > > Sounds good. > > I was tempting to do something like this: > > diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm > index a7156bf..dd33a26 100644 > --- a/gnu/packages/gcc.scm > +++ b/gnu/packages/gcc.scm > @@ -213,7 +213,7 @@ where the OS part is overloaded to denote a specific > ABI---into GCC > ;; below, make sure to update the relevant code in > ;; %gcc-static package as needed. > (format #f "#define GNU_USER_TARGET_LIB_SPEC \ > -\"-L~a/lib %{!static:-rpath=~a/lib %{!static-libgcc:-rpath=~a/lib64 > -rpath=~a/lib -lgcc_s}} \" ~a" > +\"-L~a/lib %{!static:-rpath=~a/lib %{!static-libgcc:-rpath=~a/lib64 > -rpath=~a/lib %{pthread: -lgcc_s}}} \" ~a" > libc libc libdir libdir suffix)) > (("#define GNU_USER_TARGET_STARTFILE_SPEC.*$" line) > (format #f "#define STANDARD_STARTFILE_PREFIX_1 \"~a/lib\" > > I believe this is enough to address what the comment mentions (glibc > dlopening libgcc_s for pthread functions), but this will need testing. > > WDYT?
I confess I don't know enough about the relevant details to know whether this would work reliably -- e.g. will -pthread always be passed to gcc at link time whenever this problem would arise? -- but it certainly looks like a cleaner solution in principle. I'm glad to defer to your judgement on how best to fix this :) Thanks! Mark