Subject: Re: bug#48335: Emacs is broken

From: Xinglu Chen <[email-masked]>
Date: Wed, 12 May 2021 09:55:00 +0200

Leo Prikler wrote:

> I can't:
> 
> --8<---------------cut here---------------start------------->8---
> $ guix time-machine --commit=87b4b0e4385149b40ee87ae2d57712679452746b
> -- \
>      environment --pure --ad-hoc emacs -- emacs --version
> GNU Emacs 27.2
> Copyright (C) 2021 Free Software Foundation, Inc.
> GNU Emacs comes with ABSOLUTELY NO WARRANTY.
> You may redistribute copies of GNU Emacs
> under the terms of the GNU General Public License.
> For more information about these matters, see the file named COPYING.
> --8<---------------cut here---------------end--------------->8---
> 
> As for the output of ldd:
> 
> libm17n-core.so.0 => /gnu/store/pdwv15zmghndkqy5473v1hxgibmvzvlz-m17n-
> lib-1.8.0/lib/libm17n-core.so.0

Hmm, ldd doesn’t list any libraries for me

--8<---------------cut here---------------start------------->8---
$ ldd /gnu/store/nvddirc1j6f031zhcwnkd0zrpjc10dyc-profile/bin/emacs
	not a dynamic executable
--8<---------------cut here---------------end--------------->8---

> > The latest “good” commit I know of is
> > ee86a035c79b838e3fdabbdb88dc30906a83cc30 (still bisecting).
> That'd be big if true, we've had the wip-emacs merge between then and
> now and while that caused a lot of problems to many, it should still
> open up.

I am now bisecting commit 5866fa558b68b3e0213b9eef93d115e6e38dcc2a, I
don’t think it should be related to the changes to the
‘emacs-build-system’.

> Now, perhaps there's a case to be made, that it's in fact broken on
> another architecture or when not using substitutes (it is not
> reproducible after all), but atm we're lacking a bit of necessary info
> here.

I am on x86_64 with substitutes enabled on a foreign distro (NixOS).

On Tue, May 11 2021, Ludovic Courtès wrote:

> I wondered if this could be a missed reference issue due to grafting
> (whereby a recent ‘guix gc’ would have deleted m17n-lib from the store
> because the grafted Emacs didn’t have a visible reference to it) but
> that doesn’t seem to be the case (on x86_64-linux):
>
> --8<---------------cut here---------------start------------->8---
> $ guix time-machine --commit=87b4b0e4385149b40ee87ae2d57712679452746b -- build emacs
> /gnu/store/d0r7zcph1f3y0cahp9yv5hs8rhi9hcig-emacs-27.2
> $ ldd /gnu/store/d0r7zcph1f3y0cahp9yv5hs8rhi9hcig-emacs-27.2/bin/.emacs-27.2-real |grep m17n
>         libm17n-core.so.0 => /gnu/store/pdwv15zmghndkqy5473v1hxgibmvzvlz-m17n-lib-1.8.0/lib/libm17n-core.so.0 (0x00007f6800d1d000)
>         libm17n-flt.so.0 => /gnu/store/pdwv15zmghndkqy5473v1hxgibmvzvlz-m17n-lib-1.8.0/lib/libm17-flt.so.0 (0x00007f6800d11000)
> $ guix gc -R /gnu/store/d0r7zcph1f3y0cahp9yv5hs8rhi9hcig-emacs-27.2 |grep pdwv15zmghndkqy5473v1hxgibmvzvlz
> /gnu/store/pdwv15zmghndkqy5473v1hxgibmvzvlz-m17n-lib-1.8.0
> --8<---------------cut here---------------end--------------->8---
>
> Does passing ‘--no-grafts’ to ‘environment’ make a difference for you?

This doesn’t seem to help either, and as I wrote above, ldd doesn’t list
any libraries for Emacs.  Interestingly, this also seems to be the case
with ‘emacs-native-comp’ from the flatwatson channel[1], but the binary
works fine (I am using it to write this email).

--8<---------------cut here---------------start------------->8---
$ ldd /gnu/store/0drwnvfnfnz486m3vz4ddnd4x91za5m5-emacs-native-comp-28.0.50-165.25c775b/bin/emacs
	not a dynamic executable
--8<---------------cut here---------------end--------------->8---

[1]: https://github.com/flatwhatson/guix-channel/blob/master/flat/packages/emacs.scm#L160