muffinmad/emacs-mini-frame

Native compiling mini-frame in emacs 29 causes a compilation error

Closed this issue · 1 comments

Hi, when installing mini-frame manually or via use-package I receive this error on startup:

Native compiler error: (lambda (arg0 &optional arg1 arg2 arg3 arg4 arg5 arg6) (let ((f #'read-from-minibuffer)) (funcall f arg0 arg1 arg2 arg3 arg4 arg5 arg6))), Compiling c:/Users/Jordan/.emacs.d/eln-cache/29.0.50-9632210b/subr--trampoline-726561642d66726f6d2d6d696e69627566666572_read_from_minibuffer_0.eln...
x86_64-w64-mingw32-gcc-12.2.0: fatal error: cannot execute 'as': CreateProcess: No such file or directory
compilation terminated.

With --debug-init we get:

Debugger entered--Lisp error: (native-compiler-error (lambda (arg0 &optional arg1 arg2 arg3 arg4 arg5 arg6) (let ((f #'read-from-minibuffer)) (funcall f arg0 arg1 arg2 arg3 arg4 arg5 arg6))) "Compiling c:/Users/Jordan/.emacs.d/eln-cache/29.0....")
  signal(native-compiler-error ((lambda (arg0 &optional arg1 arg2 arg3 arg4 arg5 arg6) (let ((f #'read-from-minibuffer)) (funcall f arg0 arg1 arg2 arg3 arg4 arg5 arg6))) "Compiling c:/Users/Jordan/.emacs.d/eln-cache/29.0...."))
  comp--native-compile((lambda (arg0 &optional arg1 arg2 arg3 arg4 arg5 arg6) (let ((f #'read-from-minibuffer)) (funcall f arg0 arg1 arg2 arg3 arg4 arg5 arg6))) nil "c:/Users/Jordan/.emacs.d/eln-cache/29.0.50-9632210...")
  comp-trampoline-compile(read-from-minibuffer)
  comp-subr-trampoline-install(read-from-minibuffer)
  advice--add-function(:around (#f(compiled-function () #<bytecode 0x3647c019df7e91>) . #f(compiled-function (gv--val) #<bytecode 0x85c60bbba7cb3c2>)) mini-frame-read-from-minibuffer nil)
  advice-add(read-from-minibuffer :around mini-frame-read-from-minibuffer)
  (if remove (advice-remove fn func) (advice-add fn :around func))
  (closure ((remove) (func . mini-frame-read-from-minibuffer)) (fn) (if remove (advice-remove fn func) (advice-add fn :around func)))(read-from-minibuffer)
  mapc((closure ((remove) (func . mini-frame-read-from-minibuffer)) (fn) (if remove (advice-remove fn func) (advice-add fn :around func))) (read-from-minibuffer read-string yes-or-no-p))
  mini-frame--advice((read-from-minibuffer read-string yes-or-no-p) mini-frame-read-from-minibuffer)
  (cond (mini-frame-mode (if (boundp 'minibuffer-follows-selected-frame) (progn (setq mini-frame--minibuffer-follows-selected-frame minibuffer-follows-selected-frame) (setq minibuffer-follows-selected-frame nil))) (mini-frame--advice mini-frame-advice-functions #'mini-frame-read-from-minibuffer) (mini-frame--advice mini-frame-ignore-functions #'mini-frame--ignore-function) (advice-add 'minibuffer-selected-window :around #'mini-frame--minibuffer-selected-window) (if mini-frame-create-lazy nil (add-hook 'window-setup-hook #'(lambda nil (let (...) (setq mini-frame-frame ...)))))) (t (if (boundp 'minibuffer-follows-selected-frame) (progn (setq minibuffer-follows-selected-frame mini-frame--minibuffer-follows-selected-frame))) (mini-frame--advice mini-frame-advice-functions #'mini-frame-read-from-minibuffer t) (mini-frame--advice mini-frame-ignore-functions #'mini-frame--ignore-function t) (advice-remove 'minibuffer-selected-window #'mini-frame--minibuffer-selected-window) (if (frame-live-p mini-frame-frame) (progn (delete-frame mini-frame-frame))) (if (frame-live-p mini-frame-completions-frame) (progn (delete-frame mini-frame-completions-frame)))))
  (let ((last-message (current-message))) (progn (set-default 'mini-frame-mode (cond ((eq arg 'toggle) (not (default-value 'mini-frame-mode))) ((and (numberp arg) (< arg 1)) nil) (t t)))) (if (boundp 'global-minor-modes) (progn (setq global-minor-modes (delq 'mini-frame-mode global-minor-modes)) (if (default-value 'mini-frame-mode) (progn (setq global-minor-modes (cons 'mini-frame-mode global-minor-modes)))))) (cond (mini-frame-mode (if (boundp 'minibuffer-follows-selected-frame) (progn (setq mini-frame--minibuffer-follows-selected-frame minibuffer-follows-selected-frame) (setq minibuffer-follows-selected-frame nil))) (mini-frame--advice mini-frame-advice-functions #'mini-frame-read-from-minibuffer) (mini-frame--advice mini-frame-ignore-functions #'mini-frame--ignore-function) (advice-add 'minibuffer-selected-window :around #'mini-frame--minibuffer-selected-window) (if mini-frame-create-lazy nil (add-hook 'window-setup-hook #'(lambda nil (let ... ...))))) (t (if (boundp 'minibuffer-follows-selected-frame) (progn (setq minibuffer-follows-selected-frame mini-frame--minibuffer-follows-selected-frame))) (mini-frame--advice mini-frame-advice-functions #'mini-frame-read-from-minibuffer t) (mini-frame--advice mini-frame-ignore-functions #'mini-frame--ignore-function t) (advice-remove 'minibuffer-selected-window #'mini-frame--minibuffer-selected-window) (if (frame-live-p mini-frame-frame) (progn (delete-frame mini-frame-frame))) (if (frame-live-p mini-frame-completions-frame) (progn (delete-frame mini-frame-completions-frame))))) (run-hooks 'mini-frame-mode-hook (if (default-value 'mini-frame-mode) 'mini-frame-mode-on-hook 'mini-frame-mode-off-hook)) (if (called-interactively-p 'any) (progn (customize-mark-as-set 'mini-frame-mode) (if (and (current-message) (not (equal last-message (current-message)))) nil (let ((local "")) (message "Mini-Frame mode %sabled%s" (if (default-value ...) "en" "dis") local))))))
  mini-frame-mode(t)
  load-with-code-conversion("c:/Users/Jordan/.emacs.d/completion.el" "c:/Users/Jordan/.emacs.d/completion.el" nil nil)
  load("~/.emacs.d/completion.el")

This is with no other customisations

This was caused by an incorrectly configured exec-path