Package: emacs;
Reported by: Holger Schurig <holgerschurig <at> gmail.com>
Date: Mon, 3 Oct 2022 07:12:01 UTC
Severity: normal
Found in version 29.0.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 58267 in the body.
You can then email your comments to 58267 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#58267
; Package emacs
.
(Mon, 03 Oct 2022 07:12:01 GMT) Full text and rfc822 format available.Holger Schurig <holgerschurig <at> gmail.com>
:bug-gnu-emacs <at> gnu.org
.
(Mon, 03 Oct 2022 07:12:01 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Holger Schurig <holgerschurig <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 29.0.50; Native-compiling the same files at every start Date: Mon, 3 Oct 2022 00:11:38 -0700
* I compiled Emacs from GIT by myself (version emacs-28.2-159399-g2973f91fb3) * installed it via GNU Stow into /usr/local/emacs * whenever I now run "emacs -Q" the same files will always be byte-compiled according to "*Async-native-compile-log*": Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-loaddefs.el.gz... uncompressing cl-loaddefs.el.gz... uncompressing cl-loaddefs.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-lib.el.gz... uncompressing cl-lib.el.gz... uncompressing cl-lib.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-extra.el.gz... uncompressing cl-extra.el.gz... uncompressing cl-extra.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/help-mode.el.gz... uncompressing help-mode.el.gz... uncompressing help-mode.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/gv.el.gz... uncompressing gv.el.gz... uncompressing gv.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-macs.el.gz... uncompressing cl-macs.el.gz... uncompressing cl-macs.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-seq.el.gz... uncompressing cl-seq.el.gz... uncompressing cl-seq.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/rx.el.gz... uncompressing rx.el.gz... uncompressing rx.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/subr-x.el.gz... uncompressing subr-x.el.gz... uncompressing subr-x.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/icons.el.gz... uncompressing icons.el.gz... uncompressing icons.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/warnings.el.gz... uncompressing warnings.el.gz... uncompressing warnings.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/display-line-numbers.el.gz... uncompressing display-line-numbers.el.gz... uncompressing display-line-numbers.el.gz...done Compilation finished. Compilation finished. Compiling /usr/local/share/emacs/29.0.50/lisp/mail/mail-utils.el.gz... uncompressing mail-utils.el.gz... uncompressing mail-utils.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/ietf-drums.el.gz... uncompressing ietf-drums.el.gz... uncompressing ietf-drums.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/mm-util.el.gz... uncompressing mm-util.el.gz... uncompressing mm-util.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/rfc2045.el.gz... uncompressing rfc2045.el.gz... uncompressing rfc2045.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/rfc2047.el.gz... uncompressing rfc2047.el.gz... uncompressing rfc2047.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/sendmail.el.gz... uncompressing sendmail.el.gz... uncompressing sendmail.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/mailheader.el.gz... uncompressing mailheader.el.gz... uncompressing mailheader.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/gmm-utils.el.gz... uncompressing gmm-utils.el.gz... uncompressing gmm-utils.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/mailabbrev.el.gz... uncompressing mailabbrev.el.gz... uncompressing mailabbrev.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/rfc2231.el.gz... uncompressing rfc2231.el.gz... uncompressing rfc2231.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/mail-parse.el.gz... uncompressing mail-parse.el.gz... uncompressing mail-parse.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/mm-encode.el.gz... uncompressing mm-encode.el.gz... uncompressing mm-encode.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/mm-decode.el.gz... uncompressing mm-decode.el.gz... uncompressing mm-decode.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/mm-bodies.el.gz... uncompressing mm-bodies.el.gz... uncompressing mm-bodies.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/calendar/time-date.el.gz... uncompressing time-date.el.gz... uncompressing time-date.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/text-property-search.el.gz... uncompressing text-property-search.el.gz... uncompressing text-property-search.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/gnus-util.el.gz... uncompressing gnus-util.el.gz... uncompressing gnus-util.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/epg-config.el.gz... uncompressing epg-config.el.gz... uncompressing epg-config.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/rfc6068.el.gz... uncompressing rfc6068.el.gz... uncompressing rfc6068.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/epg.el.gz... uncompressing epg.el.gz... uncompressing epg.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/derived.el.gz... uncompressing derived.el.gz... uncompressing derived.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/epa.el.gz... uncompressing epa.el.gz... uncompressing epa.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/password-cache.el.gz... uncompressing password-cache.el.gz... uncompressing password-cache.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/mml-sec.el.gz... uncompressing mml-sec.el.gz... uncompressing mml-sec.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/mml.el.gz... uncompressing mml.el.gz... uncompressing mml.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/rfc822.el.gz... uncompressing rfc822.el.gz... uncompressing rfc822.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/dired.el.gz... uncompressing dired.el.gz... uncompressing dired.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/net/puny.el.gz... uncompressing puny.el.gz... uncompressing puny.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/yank-media.el.gz... uncompressing yank-media.el.gz... uncompressing yank-media.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/net/mailcap.el.gz... uncompressing mailcap.el.gz... uncompressing mailcap.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/gnus/message.el.gz... uncompressing message.el.gz... uncompressing message.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/emacsbug.el.gz... uncompressing emacsbug.el.gz... uncompressing emacsbug.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/mail/mail-extr.el.gz... uncompressing mail-extr.el.gz... uncompressing mail-extr.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/sort.el.gz... uncompressing sort.el.gz... uncompressing sort.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/shadow.el.gz... uncompressing shadow.el.gz... uncompressing shadow.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/pp.el.gz... uncompressing pp.el.gz... uncompressing pp.el.gz...done Compilation finished. So, when I stop Emacs and start it again, I get the same behavior. I think the underlying problem is that /usr/local/share is root owned, and my running Emacs as a user don't have write access. So no *.eln files end up in this path. And this makes Emacs trying to byte-compile them again. Couldn't Emacs byte-compile them at "make" or "make install" steps? In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.34, cairo version 1.16.0) of 2022-10-03 built on holger Repository revision: 2973f91fb3de824cd21399dc5cd298d4b8be4022 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12101003 System Description: Debian GNU/Linux bookworm/sid Configured using: 'configure -C --with-cairo --with-dbus --with-file-notification=inotify --with-gnutls --with-gpm=no --with-harfbuzz --with-imagemagick --with-json --with-modules --with-native-compilation --with-rsvg --with-small-ja-dic --with-sound=alsa --with-threads --with-toolkit-scroll-bars --with-x-toolkit=gtk3 --with-xml2 --with-xwidgets --without-gconf --without-gpm --without-gsettings --without-hesiod --without-imagemagick --without-kerberos --without-kerberos5 --without-ns --without-pop --without-selinux --without-wide-int --without-xft --without-xim 'CFLAGS=-g -O2 -march=native -ffile-prefix-map=/home/holger=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -fno-omit-frame-pointer'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XINPUT2 XPM XWIDGETS GTK3 ZLIB Important settings: value of $LANG: C.UTF-8 locale-coding-system: utf-8-unix Major mode: Fundamental Minor modes in effect: tooltip-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t blink-cursor-mode: t buffer-read-only: t line-number-mode: t indent-tabs-mode: t transient-mark-mode: (only . t) auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util text-property-search time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils display-line-numbers comp comp-cstr warnings icons subr-x rx cl-seq cl-macs gv cl-extra help-mode cl-loaddefs cl-lib bytecomp byte-compile cconv rmc iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads xwidget-internal dbusbind inotify lcms2 dynamic-setting font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 81135 9949) (symbols 48 7182 0) (strings 32 23229 3214) (string-bytes 1 738678) (vectors 16 19025) (vector-slots 8 332533 13684) (floats 8 43 20) (intervals 56 316 0) (buffers 1000 12))
bug-gnu-emacs <at> gnu.org
:bug#58267
; Package emacs
.
(Mon, 03 Oct 2022 16:52:01 GMT) Full text and rfc822 format available.Message #8 received at 58267 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Holger Schurig <holgerschurig <at> gmail.com> Cc: 58267 <at> debbugs.gnu.org Subject: Re: bug#58267: 29.0.50; Native-compiling the same files at every start Date: Mon, 03 Oct 2022 19:51:46 +0300
> From: Holger Schurig <holgerschurig <at> gmail.com> > Date: Mon, 3 Oct 2022 00:11:38 -0700 > > So, when I stop Emacs and start it again, I get the same behavior. > > I think the underlying problem is that /usr/local/share is root owned, > and my running Emacs as a user don't have write access. So no *.eln > files end up in this path. And this makes Emacs trying to byte-compile > them again. But Emacs is not supposed to write the *.eln files into /usr/local/share, it's supposed to write them to your .emacs.d/eln-cache directory under your home directory. Is your home directory writable? What is the value of native-comp-eln-load-path in that session? > Couldn't Emacs byte-compile them at "make" or "make install" steps? How would that help if Emacs is unable to write the *.eln files for some reason?
bug-gnu-emacs <at> gnu.org
:bug#58267
; Package emacs
.
(Tue, 04 Oct 2022 19:21:02 GMT) Full text and rfc822 format available.Message #11 received at 58267 <at> debbugs.gnu.org (full text, mbox):
From: Holger Schurig <holgerschurig <at> gmail.com> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 58267 <at> debbugs.gnu.org Subject: Re: bug#58267: 29.0.50; Native-compiling the same files at every start Date: Tue, 4 Oct 2022 21:20:36 +0200
[Message part 1 (text/plain, inline)]
Hi Eli, > What is the value of native-comp-eln-load-path in that session? Thanks for looking into it. native-comp-eln-load-path is: ("/home/holger/.emacs.d/eln-cache/" "/usr/local/stow/emacs/lib/emacs/29.0.50/native-lisp/") And the first directory is certainly writable: holger <at> holger:~$ ll ~/.emacs.d/eln-cache/ total 4 drwxr-xr-x 2 holger holger 4096 Oct 4 21:08 29.0.50-aee1894c/ holger <at> holger:~$ ll ~/.emacs.d/eln-cache/29.0.50-aee1894c/ total 4724 -rwxr-xr-x 1 holger holger 108536 Oct 3 09:04 cl-extra-d7051cba-954d0113.eln* -rwxr-xr-x 1 holger holger 61192 Oct 3 09:04 cl-lib-8b938900-c76f14d9.eln* -rwxr-xr-x 1 holger holger 333328 Oct 3 09:05 cl-macs-7ae82f81-7195f6d0.eln* -rwxr-xr-x 1 holger holger 61032 Oct 4 21:07 cl-print-79bf9fb1-c759fffb.eln* -rwxr-xr-x 1 holger holger 128112 Oct 3 09:04 cl-seq-f464c4e2-41e7a709.eln* -rwxr-xr-x 1 holger holger 46168 Oct 3 09:05 derived-381801a7-44101f77.eln* -rwxr-xr-x 1 holger holger 314336 Oct 3 09:06 dired-6a3ae2bc-a97b899d.eln* -rwxr-xr-x 1 holger holger 39168 Oct 3 09:05 display-line-numbers-1d060f2e-ac11bdb2.eln* -rwxr-xr-x 1 holger holger 50896 Oct 3 09:06 emacsbug-2b184f71-463477ae.eln* -rwxr-xr-x 1 holger holger 109760 Oct 3 09:05 epa-bdd8ea1c-902eeb9e.eln* -rwxr-xr-x 1 holger holger 34696 Oct 3 09:05 epg-config-78240760-6b96d0a3.eln* -rwxr-xr-x 1 holger holger 414104 Oct 3 09:05 epg-de089247-f5f7c3c5.eln* -rwxr-xr-x 1 holger holger 22304 Oct 3 09:05 gmm-utils-3a9b481d-ca3307d0.eln* -rwxr-xr-x 1 holger holger 154784 Oct 3 09:05 gnus-util-b645aa9c-09000edd.eln* -rwxr-xr-x 1 holger holger 211592 Oct 3 09:04 gv-e0cf7478-70e05b9c.eln* -rwxr-xr-x 1 holger holger 182992 Oct 4 21:07 help-fns-d233c6e8-a099ac59.eln* -rwxr-xr-x 1 holger holger 73536 Oct 3 09:04 help-mode-d4dbae3d-942d04d2.eln* -rwxr-xr-x 1 holger holger 35328 Oct 3 09:04 icons-eafe82eb-aebf40bc.eln* -rwxr-xr-x 1 holger holger 41688 Oct 3 09:05 ietf-drums-23d9ecfe-d43bb971.eln* -rwxr-xr-x 1 holger holger 97616 Oct 3 09:06 mail-extr-e04131ae-0d3fbd03.eln* -rwxr-xr-x 1 holger holger 19856 Oct 3 09:05 mail-parse-5e7f4583-4dd5f035.eln* -rwxr-xr-x 1 holger holger 38032 Oct 3 09:05 mail-utils-ae525238-1df0075a.eln* -rwxr-xr-x 1 holger holger 44736 Oct 3 09:05 mailabbrev-287b6d20-0b61dba5.eln* -rwxr-xr-x 1 holger holger 75672 Oct 3 09:05 mailcap-a1205653-fa0834cd.eln* -rwxr-xr-x 1 holger holger 26520 Oct 3 09:05 mailheader-2dff755b-d62c8c9d.eln* -rwxr-xr-x 1 holger holger 571024 Oct 3 09:06 message-4a315c5a-c7ff10aa.eln* -rwxr-xr-x 1 holger holger 29928 Oct 3 09:05 mm-bodies-5a92b2dc-09a021c3.eln* -rwxr-xr-x 1 holger holger 176576 Oct 3 09:05 mm-decode-4a4c16d8-5bfcef52.eln* -rwxr-xr-x 1 holger holger 27776 Oct 3 09:05 mm-encode-4f0ce800-f393314a.eln* -rwxr-xr-x 1 holger holger 62432 Oct 3 09:05 mm-util-3a4439f0-1f9a87ba.eln* -rwxr-xr-x 1 holger holger 126880 Oct 3 09:05 mml-34028078-bb605e70.eln* -rwxr-xr-x 1 holger holger 103496 Oct 3 09:05 mml-sec-827872f6-853bc022.eln* -rwxr-xr-x 1 holger holger 19384 Oct 3 09:05 password-cache-187e4eec-58743954.eln* -rwxr-xr-x 1 holger holger 43240 Oct 3 09:06 pp-5d47c1cc-a707bff5.eln* -rwxr-xr-x 1 holger holger 30168 Oct 3 09:05 puny-eb5a151f-3cb4b46d.eln* -rwxr-xr-x 1 holger holger 16360 Oct 3 09:05 rfc2045-713c994b-52b58bf3.eln* -rwxr-xr-x 1 holger holger 72400 Oct 3 09:05 rfc2047-b84e264d-9d53d444.eln* -rwxr-xr-x 1 holger holger 33248 Oct 3 09:05 rfc2231-e2cbed75-26dda543.eln* -rwxr-xr-x 1 holger holger 18032 Oct 3 09:05 rfc6068-5e4d60aa-08220a90.eln* -rwxr-xr-x 1 holger holger 28592 Oct 3 09:05 rfc822-a91daeff-9d287a67.eln* -rwxr-xr-x 1 holger holger 140704 Oct 3 09:04 rx-627d8c83-8e412280.eln* -rwxr-xr-x 1 holger holger 119264 Oct 3 09:05 sendmail-bcf4df3f-de9a20b1.eln* -rwxr-xr-x 1 holger holger 28792 Oct 3 09:06 shadow-87c8aad9-fa6a3d65.eln* -rwxr-xr-x 1 holger holger 49616 Oct 3 09:06 sort-14dd51e7-e6a8ba97.eln* -rwxr-xr-x 1 holger holger 16056 Oct 2 18:00 subr--trampoline-61626f72742d7265637572736976652d65646974_abort_recursive_edit_0.eln* -rwxr-xr-x 1 holger holger 16056 Oct 2 18:00 subr--trampoline-6d616b652d70726f63657373_make_process_0.eln* -rwxr-xr-x 1 holger holger 16056 Oct 2 18:00 subr--trampoline-73656c6563742d77696e646f77_select_window_0.eln* -rwxr-xr-x 1 holger holger 16024 Oct 2 18:00 subr--trampoline-746f702d6c6576656c_top_level_0.eln* -rwxr-xr-x 1 holger holger 49072 Oct 3 09:04 subr-x-02dfef32-177735b4.eln* -rwxr-xr-x 1 holger holger 29264 Oct 3 09:05 text-property-search-db1383f6-ed2e2f1e.eln* -rwxr-xr-x 1 holger holger 61032 Oct 4 21:08 thingatpt-6fc8a4ab-5c620eb5.eln* -rwxr-xr-x 1 holger holger 56680 Oct 3 09:05 time-date-40951a48-f2fbd30f.eln* -rwxr-xr-x 1 holger holger 31184 Oct 3 09:05 warnings-28e75f4d-02da775e.eln* -rwxr-xr-x 1 holger holger 25088 Oct 3 09:05 yank-media-62540c94-43b16516.eln* But some files are still recompiled again and again. Here are two different output from the "*Async-native-compile-log*" with two different invocations of "emacs -Q". And somehow the cl-loaddefs.el.gz gets compiled twice: First one: Compilation finished. Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-loaddefs.el.gz... uncompressing cl-loaddefs.el.gz... uncompressing cl-loaddefs.el.gz...done Compiling /usr/local/share/emacs/29.0.50/lisp/thingatpt.el.gz... uncompressing thingatpt.el.gz... uncompressing thingatpt.el.gz...done Compilation finished. (above file list is from this point-in-time) Next one: Compilation finished. Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-loaddefs.el.gz... uncompressing cl-loaddefs.el.gz... uncompressing cl-loaddefs.el.gz...done Compilation finished. But despite this, nothing ends up in the eln-cache: holger <at> holger:~$ find ~/.emacs.d/eln-cache/ -name "cl-load*" holger <at> holger:~$ But ... it's not only cl-loaddefs.el. My Emacs setup normally is Emacs Doom. So when I start Emacs without -Q, I see that Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/pcase.el.gz... uncompressing pcase.el.gz... uncompressing pcase.el.gz...done pcase.el gets native-compiled. But later ... holger <at> holger:~$ find ~/.emacs.d/eln-cache/ -name "pcase*" holger <at> holger:~$ .. doesn't find anything. So there seem to be more Emacs Lisp libraries that fall through the roster.
[Message part 2 (text/html, inline)]
bug-gnu-emacs <at> gnu.org
:bug#58267
; Package emacs
.
(Tue, 04 Oct 2022 19:46:01 GMT) Full text and rfc822 format available.Message #14 received at 58267 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Holger Schurig <holgerschurig <at> gmail.com> Cc: 58267 <at> debbugs.gnu.org Subject: Re: bug#58267: 29.0.50; Native-compiling the same files at every start Date: Tue, 04 Oct 2022 22:45:14 +0300
> From: Holger Schurig <holgerschurig <at> gmail.com> > Date: Tue, 4 Oct 2022 21:20:36 +0200 > Cc: 58267 <at> debbugs.gnu.org > > Thanks for looking into it. native-comp-eln-load-path is: > > ("/home/holger/.emacs.d/eln-cache/" "/usr/local/stow/emacs/lib/emacs/29.0.50/native-lisp/") > > And the first directory is certainly writable: > > holger <at> holger:~$ ll ~/.emacs.d/eln-cache/ > total 4 > drwxr-xr-x 2 holger holger 4096 Oct 4 21:08 29.0.50-aee1894c/ > holger <at> holger:~$ ll ~/.emacs.d/eln-cache/29.0.50-aee1894c/ > total 4724 > -rwxr-xr-x 1 holger holger 108536 Oct 3 09:04 cl-extra-d7051cba-954d0113.eln* > -rwxr-xr-x 1 holger holger 61192 Oct 3 09:04 cl-lib-8b938900-c76f14d9.eln* > -rwxr-xr-x 1 holger holger 333328 Oct 3 09:05 cl-macs-7ae82f81-7195f6d0.eln* > -rwxr-xr-x 1 holger holger 61032 Oct 4 21:07 cl-print-79bf9fb1-c759fffb.eln* > -rwxr-xr-x 1 holger holger 128112 Oct 3 09:04 cl-seq-f464c4e2-41e7a709.eln* > -rwxr-xr-x 1 holger holger 46168 Oct 3 09:05 derived-381801a7-44101f77.eln* > -rwxr-xr-x 1 holger holger 314336 Oct 3 09:06 dired-6a3ae2bc-a97b899d.eln* > -rwxr-xr-x 1 holger holger 39168 Oct 3 09:05 display-line-numbers-1d060f2e-ac11bdb2.eln* > -rwxr-xr-x 1 holger holger 50896 Oct 3 09:06 emacsbug-2b184f71-463477ae.eln* > -rwxr-xr-x 1 holger holger 109760 Oct 3 09:05 epa-bdd8ea1c-902eeb9e.eln* > -rwxr-xr-x 1 holger holger 34696 Oct 3 09:05 epg-config-78240760-6b96d0a3.eln* > -rwxr-xr-x 1 holger holger 414104 Oct 3 09:05 epg-de089247-f5f7c3c5.eln* > -rwxr-xr-x 1 holger holger 22304 Oct 3 09:05 gmm-utils-3a9b481d-ca3307d0.eln* > -rwxr-xr-x 1 holger holger 154784 Oct 3 09:05 gnus-util-b645aa9c-09000edd.eln* > -rwxr-xr-x 1 holger holger 211592 Oct 3 09:04 gv-e0cf7478-70e05b9c.eln* > -rwxr-xr-x 1 holger holger 182992 Oct 4 21:07 help-fns-d233c6e8-a099ac59.eln* > -rwxr-xr-x 1 holger holger 73536 Oct 3 09:04 help-mode-d4dbae3d-942d04d2.eln* > -rwxr-xr-x 1 holger holger 35328 Oct 3 09:04 icons-eafe82eb-aebf40bc.eln* > -rwxr-xr-x 1 holger holger 41688 Oct 3 09:05 ietf-drums-23d9ecfe-d43bb971.eln* > -rwxr-xr-x 1 holger holger 97616 Oct 3 09:06 mail-extr-e04131ae-0d3fbd03.eln* > -rwxr-xr-x 1 holger holger 19856 Oct 3 09:05 mail-parse-5e7f4583-4dd5f035.eln* > -rwxr-xr-x 1 holger holger 38032 Oct 3 09:05 mail-utils-ae525238-1df0075a.eln* > -rwxr-xr-x 1 holger holger 44736 Oct 3 09:05 mailabbrev-287b6d20-0b61dba5.eln* > -rwxr-xr-x 1 holger holger 75672 Oct 3 09:05 mailcap-a1205653-fa0834cd.eln* > -rwxr-xr-x 1 holger holger 26520 Oct 3 09:05 mailheader-2dff755b-d62c8c9d.eln* > -rwxr-xr-x 1 holger holger 571024 Oct 3 09:06 message-4a315c5a-c7ff10aa.eln* > -rwxr-xr-x 1 holger holger 29928 Oct 3 09:05 mm-bodies-5a92b2dc-09a021c3.eln* > -rwxr-xr-x 1 holger holger 176576 Oct 3 09:05 mm-decode-4a4c16d8-5bfcef52.eln* > -rwxr-xr-x 1 holger holger 27776 Oct 3 09:05 mm-encode-4f0ce800-f393314a.eln* > -rwxr-xr-x 1 holger holger 62432 Oct 3 09:05 mm-util-3a4439f0-1f9a87ba.eln* > -rwxr-xr-x 1 holger holger 126880 Oct 3 09:05 mml-34028078-bb605e70.eln* > -rwxr-xr-x 1 holger holger 103496 Oct 3 09:05 mml-sec-827872f6-853bc022.eln* > -rwxr-xr-x 1 holger holger 19384 Oct 3 09:05 password-cache-187e4eec-58743954.eln* > -rwxr-xr-x 1 holger holger 43240 Oct 3 09:06 pp-5d47c1cc-a707bff5.eln* > -rwxr-xr-x 1 holger holger 30168 Oct 3 09:05 puny-eb5a151f-3cb4b46d.eln* > -rwxr-xr-x 1 holger holger 16360 Oct 3 09:05 rfc2045-713c994b-52b58bf3.eln* > -rwxr-xr-x 1 holger holger 72400 Oct 3 09:05 rfc2047-b84e264d-9d53d444.eln* > -rwxr-xr-x 1 holger holger 33248 Oct 3 09:05 rfc2231-e2cbed75-26dda543.eln* > -rwxr-xr-x 1 holger holger 18032 Oct 3 09:05 rfc6068-5e4d60aa-08220a90.eln* > -rwxr-xr-x 1 holger holger 28592 Oct 3 09:05 rfc822-a91daeff-9d287a67.eln* > -rwxr-xr-x 1 holger holger 140704 Oct 3 09:04 rx-627d8c83-8e412280.eln* > -rwxr-xr-x 1 holger holger 119264 Oct 3 09:05 sendmail-bcf4df3f-de9a20b1.eln* > -rwxr-xr-x 1 holger holger 28792 Oct 3 09:06 shadow-87c8aad9-fa6a3d65.eln* > -rwxr-xr-x 1 holger holger 49616 Oct 3 09:06 sort-14dd51e7-e6a8ba97.eln* > -rwxr-xr-x 1 holger holger 16056 Oct 2 18:00 > subr--trampoline-61626f72742d7265637572736976652d65646974_abort_recursive_edit_0.eln* > -rwxr-xr-x 1 holger holger 16056 Oct 2 18:00 > subr--trampoline-6d616b652d70726f63657373_make_process_0.eln* > -rwxr-xr-x 1 holger holger 16056 Oct 2 18:00 > subr--trampoline-73656c6563742d77696e646f77_select_window_0.eln* > -rwxr-xr-x 1 holger holger 16024 Oct 2 18:00 subr--trampoline-746f702d6c6576656c_top_level_0.eln* > -rwxr-xr-x 1 holger holger 49072 Oct 3 09:04 subr-x-02dfef32-177735b4.eln* > -rwxr-xr-x 1 holger holger 29264 Oct 3 09:05 text-property-search-db1383f6-ed2e2f1e.eln* > -rwxr-xr-x 1 holger holger 61032 Oct 4 21:08 thingatpt-6fc8a4ab-5c620eb5.eln* > -rwxr-xr-x 1 holger holger 56680 Oct 3 09:05 time-date-40951a48-f2fbd30f.eln* > -rwxr-xr-x 1 holger holger 31184 Oct 3 09:05 warnings-28e75f4d-02da775e.eln* > -rwxr-xr-x 1 holger holger 25088 Oct 3 09:05 yank-media-62540c94-43b16516.eln* > > But some files are still recompiled again and again. Here are two different output from the > "*Async-native-compile-log*" with two different invocations of "emacs -Q". And somehow the > cl-loaddefs.el.gz gets compiled twice: > > First one: > > Compilation finished. > Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-loaddefs.el.gz... > uncompressing cl-loaddefs.el.gz... > uncompressing cl-loaddefs.el.gz...done > Compiling /usr/local/share/emacs/29.0.50/lisp/thingatpt.el.gz... > uncompressing thingatpt.el.gz... > uncompressing thingatpt.el.gz...done > Compilation finished. > > (above file list is from this point-in-time) > > Next one: > > Compilation finished. > Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-loaddefs.el.gz... > uncompressing cl-loaddefs.el.gz... > uncompressing cl-loaddefs.el.gz...done > Compilation finished. > > But despite this, nothing ends up in the eln-cache: > > holger <at> holger:~$ find ~/.emacs.d/eln-cache/ -name "cl-load*" > holger <at> holger:~$ cl-loaddefs.el has a "no-native-compile: t" cookie, so it's expected that you will not find it in the eln-cache. But all the other cl-*.eln files are there, as your list above shows. > But ... it's not only cl-loaddefs.el. My Emacs setup normally is Emacs Doom. So when I start Emacs without > -Q, I see that > > Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/pcase.el.gz... > uncompressing pcase.el.gz... > uncompressing pcase.el.gz...done > > pcase.el gets native-compiled. But later ... > > holger <at> holger:~$ find ~/.emacs.d/eln-cache/ -name "pcase*" > holger <at> holger:~$ > > .. doesn't find anything. So there seem to be more Emacs Lisp libraries that fall through the roster. What do you mean by "later"? Does pcase*.eln appear in the eln-cache, but gets deleted later, or does it never appear there? If you start "emacs -Q" and type "M-x load-library RET pcase RET", does pcase get compiled and deposited into your eln-cache? And what exactly is the role of "GNU Stow" in this? Did you try installing the Emacs you've built with just "make install" instead?
Eli Zaretskii <eliz <at> gnu.org>
:Holger Schurig <holgerschurig <at> gmail.com>
:Message #19 received at 58267-done <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Holger Schurig <holgerschurig <at> gmail.com> Cc: 58267-done <at> debbugs.gnu.org Subject: Re: bug#58267: 29.0.50; Native-compiling the same files at every start Date: Wed, 05 Oct 2022 08:26:14 +0300
> From: Holger Schurig <holgerschurig <at> gmail.com> > Date: Tue, 4 Oct 2022 22:13:24 +0200 > > > cl-loaddefs.el has a "no-native-compile: t" cookie, so it's expected > > Ah, okay. Still weird that the log claims that it's logged as if it is compiled: > > Compiling /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-loaddefs.el.gz... > uncompressing cl-loaddefs.el.gz... > uncompressing cl-loaddefs.el.gz...done > > Would I have read > > Uncompress /usr/local/share/emacs/29.0.50/lisp/emacs-lisp/cl-loaddefs.el.gz... > ...done. no-native-compile set, ignored > > then I wouldn't have wondered into this trap. > > > If you start "emacs -Q" and type "M-x load-library RET pcase RET", does pcase get compiled and > deposited into your eln-cache? > > Ah, that is the difference. Yes, this time it did. Previously it didn't. And the difference was ... I started > "emacs" without -Q for the pcase.el example. So I did start Emacs Doom, not vanilla Emacs. And Dooms > one sets different cache directories: > > > native-comp-eln-load-path is a variable defined in comp.c. > > > > Value > > ("/home/holger/.emacs.d/.local/cache/eln/" "/home/holger/.emacs.d/eln-cache/" > "/usr/local/stow/emacs/lib/emacs/29.0.50/native-lisp/") > > So the native-compiled pcase.el ended up in Doom's place, not in Emacs' place, where I did expect it. > > That also explains what I reported in my original post. > > * I started "emacs" (Doom) and noticed several files in the Async log > * Then I started "emacs -Q" and saw the same files again > * This was because Doom wrote the compiled ones into his directory, hidden from vanilla Emacs, and > vanilla Emacs had to compile them. Again. > * On top of that the cl-loaddefs file with the no-native-compile cookie confused me further > > So, sorry that I bothered you. This bug isn't a bug and can be closed. Thanks, I'm therefore closing this bug.
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Wed, 02 Nov 2022 11:24:08 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.