Bug 199788
Summary: | segmentation fault throwing exception from g++ app compiled -static | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 3 | Reporter: | Matt Bonner <matt.bonner> | ||||
Component: | binutils | Assignee: | Jakub Jelinek <jakub> | ||||
Status: | CLOSED WONTFIX | QA Contact: | |||||
Severity: | high | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 3.0 | ||||||
Target Milestone: | --- | ||||||
Target Release: | --- | ||||||
Hardware: | x86_64 | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2007-03-20 16:29:35 UTC | Type: | --- | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Attachments: |
|
Description
Matt Bonner
2006-07-21 23:46:31 UTC
Created attachment 132853 [details]
Sample code to reproduce segfault
This is caused by a binutils bug, .eh_frame section isn't terminated in some rare circumstances. The fix is quite involved though and the benefits outweight the risks this late in the RHEL3 development. There is an easy workaround: 1) don't link static, it is almost always a bad choice, see http://people.redhat.com/drepper/no_static_linking.html 2) if after reading it you are still convinced you need to link something statically, to workaround this bug you can just link an empty function object after -lc, as in: echo 'void ehframe_dummy (void) { }' > ehframe_dummy.C g++ -static ... -lc ehframe_dummy.C (-lc ehframe_dummy.C added to whatever you had on your command line before) |