undefined symbol: __stack_chk_fail_local
Jakub Jelinek
jakub at redhat.com
Thu Oct 30 12:10:02 UTC 2008
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.
>
> http://sundaram.fedorapeople.org/packages/pam_sotp-0.3.3-1.fc9.src.rpm
>
> 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...
Jakub
More information about the fedora-devel-list
mailing list