gcc build with -O0 results in corrupted -debuginfo package
pspacek at redhat.com
Fri Apr 25 14:43:40 UTC 2014
On 25.4.2014 16:28, Reindl Harald wrote:
> Am 25.04.2014 16:10, schrieb Petr Spacek:
>> I'm trying to rebuild bind-9.9.4-12.P2.fc20.src.rpm with
>> CFLAGS="$CFLAGS $RPM_OPT_FLAGS -O0 -ggdb".
>> I did the simplest possible thing - edited the original spec file (see spec.diff) and built the package:
>> $ rpmbuild -ba bind.spec
>> The package builds and BIND itself seems to work. The problem is that new debuginfo package is missing 118 out of
>> 283 header files in /usr/src/debug/bind-9.9.4-P2.
>> It seems that "-O0" alone (instead of "-O0 -ggdb") causes the same problem.
>> I would be glad if anyone can give me advice how to debug this.
>> Original packages from Fedora 20 (with all headers in /usr/src/debug):
>> Packages built with -O0 -ggdb (scratch build):
> just don't do that
I'm going to reproduce and debug issue in named. Do you see any specific
reason why I should use -O2 for serious debugging/development sessions?
> and read compiler warnings
Thank you very much for your very helpful advice! :-)
> the debuginfo package is your smallest problem
I'm afraid it is not.
> you just kill security features like D_FORTIFY_SOURCE with -O0
> warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
I think my use case justifies it.
More information about the devel