Stack protection defaults cause incompatibility

Bug #68641 reported by Jelmer Vernooij
Affects Status Importance Assigned to Milestone
distcc (Ubuntu)

Bug Description

The fact that ubuntu's gcc has -fstack-protector enabled by default make that distcc from ubuntu can't be used from other systems without explicitly enabling or disabling it during configure.
If there are objects built with this option but not during linking, the following error occurs at link-time:
undefined reference to `__stack_chk_fail_local'

One way of fixing this is to make ubuntu's distcc always add -fstack-protector to CFLAGS when sending options to a remote host and always adding to CFLAGS -fno-stack-protector when receiving options from a remote host.

Revision history for this message
Jelmer Vernooij (jelmer) wrote :

I disagree about the fact that #68641 would be a dupe of #67339. Both bugs are related to the fact that the stack protector is enabled by default, but I don't see how the resolution of either of them would be related.

Revision history for this message
Martin Pool (mbp) wrote :

Fixing the options to always explicitly turn stack protection on or off would be one way to fix it. Of course we'd have to identify that we are using a gcc version where those options are available.

This is part of a larger issue of making sure that the compilers are compatible...

As a workaround for this specific case you could set the option in the client's $CFLAGS.

Changed in distcc:
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers