From: ludo@gnu.org (Ludovic Courtès)
To: guix-devel@gnu.org
Subject: Re: reproducible builds and debugging information
Date: Thu, 26 Mar 2015 22:21:35 +0100 [thread overview]
Message-ID: <87pp7vqwtc.fsf@gnu.org> (raw)
In-Reply-To: <20150325003352.GA5247@venom> ("Tomáš Čech"'s message of "Wed, 25 Mar 2015 01:33:52 +0100")
Tomáš Čech <sleep_walker@gnu.org> skribis:
> On Tue, Mar 24, 2015 at 10:09:50PM +0100, Ludovic Courtès wrote:
[...]
>>Packages that have an autoconf-based build system, and I suppose most
>>others, are built with -g.
>
> I can't confirm this statement.
>
> I added "debug" output to curl package:
Indeed, I just checked and cURL overrides the default behavior. Here it
has to be configured with --enable-debug, which also enables the test
suite (!). Do you want to try that, and add the “debug” output?
>>The binaries get stripped by default and
>>debugging info is lost unless the package has a “debug” output.
>
> OK, the difference -g and -ggdb is slight, but there is the problem
> with "debug" output.
>
> When package has output "debug" always - there is no problem.
>
> When package doesn't have "debug" output and I need it, mere adding
> output "debug" into package receipt will change the hash so I'll get
> different package.
Right.
>>Currently a few key packages have that, but most don’t (I think Debian
>>does something similar, not sure about other distros.)
>
> On openSUSE you have available all the subpackage providing stripped
> debug informations and subpackage providing source code from the
> moment of build (so DWARF information in debug part can match the source).
You mean there’s a ‘-debug’ package for every single package?
>>We could make it opt-out rather than opt-in, but the issue is disk usage
>>on build machine (including end-user machines.) See
>><http://lists.gnu.org/archive/html/bug-guix/2013-07/msg00015.html>.
>>
>>Thoughts?
>
> If we have distribution of reproducible packages, we can keep it
> opt-in and generate debug information next time (by not dropping
> it).
That’s not how it works; generating the debug info requires redoing the
whole build process, but with a slight difference.
> The only problematic packages will be the big ones like Webkit, Libre
> Office and similar because generating debug increases memory usage
> during the build significantly and may not be suitable for average
> personal computer.
A problem for C++ code in general.
So again, we could make “debug” opt-out by default, but that’ll be some
work because of issues like this.
What do people think?
Thanks,
Ludo’.
next prev parent reply other threads:[~2015-03-26 21:21 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-22 17:26 reproducible builds and debugging information Tomáš Čech
2015-03-24 21:09 ` Ludovic Courtès
2015-03-25 0:33 ` Tomáš Čech
2015-03-26 21:21 ` Ludovic Courtès [this message]
2015-03-26 21:51 ` Tomáš Čech
2015-03-27 21:24 ` Ludovic Courtès
2015-03-27 21:55 ` Tomáš Čech
2015-03-28 17:41 ` Ludovic Courtès
2015-03-29 17:24 ` Mark H Weaver
2015-03-30 19:42 ` Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87pp7vqwtc.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=guix-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.