vanilla build of 7.7p1 release on linux/4.17 fails with gcc8 @ "/usr/bin/ld: unrecognized option '-Wl,-z,retpolineplt'"
dtucker at dtucker.net
Fri Jun 8 10:37:21 AEST 2018
One difference I notice is that in your failing example you are
invoking /usr/bin/ld directly to link:
/usr/bin/ld -o ssh ssh.o readconf.o clientloop.o
sshtty.o sshconnect.o sshconnect2.o mux.o -L. -Lopenbsd-compat/
-Wl,-z,retpolineplt -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack
-fstack-protector-strong -pie -lssh -lopenbsd-compat -lutil -lz
whereas my example is invoking via gcc. I assume you are explicitly
setting the LD env var?
To narrow this down I suggest:
a) take the failing link command line and delete -Wl, options other
than retpoline and see if it will link at any point. Perhaps the
problem is the problem is occurs due to an interaction with other
b) try using LD=gcc and see if it behaves any different (also, see if
the list of options it detects is different).
Darren Tucker (dtucker at dtucker.net)
GPG key 11EAA6FA / A86E 3E07 5B19 5880 E860 37F4 9357 ECEF 11EA A6FA (new)
Good judgement comes with experience. Unfortunately, the experience
usually comes from bad judgement.
More information about the openssh-unix-dev