doc: Explain the use of make clean-go when an ABI mismatch occurs.

* doc/contributing.texi (Building from Git): Adds section on using
make clean-go.

Co-authored-by: jgart <jgart@dismail.de>
Co-authored-by: Julien Lepiller <julien@lepiller.eu>
Co-authored-by: Ryan Prior <rprior@protonmail.com>
Co-authored-by: Blake Shaw <blake@nonconstructivism.com>
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
This commit is contained in:
Guix Together 2021-12-16 01:46:49 -05:00 committed by Nicolas Goaziou
parent 3da297997d
commit 087ad097da
No known key found for this signature in database
GPG Key ID: DA00B4F048E92F2D

@ -157,6 +157,18 @@ You are advised to run @command{make authenticate} after every
changes to the repository.
@end quotation
After updating the repository, @command{make} might fail with an error
similar to the following example:
@example
error: failed to load 'gnu/packages/dunst.scm':
ice-9/eval.scm:293:34: In procedure abi-check: #<record-type <origin>>: record ABI mismatch; recompilation needed
@end example
This means that one of the record types that Guix defines (in this
example, the @code{origin} record) has changed, and all of guix needs
to be recompiled to take that change into account. To do so, run
@command{make clean-go} followed by @command{make}.
@node Running Guix Before It Is Installed
@section Running Guix Before It Is Installed