Bindist configure script doesn't update linker information in `settings`?
@christianb raised the following issue in #ghc
:
<christiaanb> bgamari: it seems the `./configure` that's part of the gitlab artifacts ignores that the system gcc doesn't know about lld
<christiaanb> I had to add this to my travis config in order to test with ghc-head artifacts: https://github.com/clash-lang/ghc-tcplugins-extra/blob/85303589c2277a3037b0f820b68876d46b01826b/.travis.yml#L69
<christiaanb> Otherwise the installed ghc will tell gcc to use `lld`, even though my version of gcc doesn't even understand the `-fuse-ld=lld` argument
<christiaanb> And adding `ld-options` after the fact doesn't help, because gcc will then just see `-fuse-ld=lld -fuse-ld=gold`, but then already trip on the first `-fuse-ld`
...
<christiaanb> I can’t replicate it on my own machine
<christiaanb> Because gcc is new enough
<christiaanb> Basically you need a version that doesn’t understand the `-fuse-ld=lld` flag
<bgamari> christiaanb, when do things fail?
<christiaanb> When the library gets linked
<christiaanb> Because GHC asks gcc to do it
<bgamari> that is distressing
<christiaanb> Only happens with old gcc though
<bgamari> the bindist configure script should have probed for -fuse-ld=lld support
<christiaanb> Yeah, it does
<christiaanb> But the setting file doesn’t get updated
<bgamari> and what does it determine?
<christiaanb> I think basically it’s not catching the fact that gcc doesn’t understand the flag at all
<bgamari> christiaanb, do you still have config.log?
<bgamari> oh, this was in CI
<bgamari> Which distribution does your CI environment use?
<christiaanb> Yeah... let me look up the CI build
<christiaanb> I think it’s Xenial
<bgamari> yes, that would also help
<christiaanb> bgamari: this is one of the failing builds: https://travis-ci.org/clash-lang/ghc-tcplugins-extra/jobs/598591717
<christiaanb> You have to expand `before_install.2` to see the configure process