undefined symbol: __stack_chk_fail_local
On Thu, Oct 30, 2008 at 10:56:49PM +1300, Douglas Bagnall wrote:
> I've been working on a package for OLPC that uses pam_sotp, which
> Rahul Sundaram packaged for Fedora in order to help OLPC.
> Unfortunately the installed pam module fails with errors like this:
> PAM unable to dlopen(/lib/security/pam_sotp.so):
> /lib/security/pam_sotp.so: undefined symbol: __stack_chk_fail_local
> This is related to gcc's fairly recently introduced stack smashing
> protection; if it is compiled with CFLAGS="-fno-stack-protector", the
> module works fine. But that seems wrong.
> How are these symbols ending up undefined? Has anyone met this
> problem before? Some googling suggested linking with gcc rather than
> ld, but I can't work out how to make the rpm do that.
Yeah, that's very likely the case. Linking with ld -shared as opposed
to gcc -shared is (almost always) a bug.
Guess you need to modify this package's Makefiles to do the right thing...
fedora-devel-list mailing list