homebrew-emacs-plus icon indicating copy to clipboard operation
homebrew-emacs-plus copied to clipboard

Failures during emacs-29 installation (unrelated to libgccjit discovery)

Open femtochin opened this issue 2 years ago • 18 comments

Please make sure to follow these steps (and mark the checkboxes):

  • [x] run brew update and try to reproduce the issue again
  • [x] run brew doctor, fix all issues and try to reproduce your issue again
  • [x] run brew config and brew doctor and include their output

What you were trying to do

Trying to install emacs version 29

What happened (include command output)

$ brew install emacs-plus@29 --with-native-comp --with-elrumo2-icon
Command output
==> Cloning https://github.com/emacs-mirror/emacs.git
Updating /Users/nano/Library/Caches/Homebrew/emacs-plus@29--git
==> Checking out branch master
Already on 'master'
Your branch is up to date with 'origin/master'.
HEAD is now at 774880c84c Get rid of `defvar-keymap' in flymake.el
==> Installing emacs-plus@29 from d12frosted/emacs-plus
==> Patching
==> Applying fix-window-role.patch
patching file src/nsterm.m
Hunk #1 succeeded at 9253 (offset 485 lines).
==> Applying system-appearance.patch
patching file src/frame.h
patching file src/nsfns.m
Hunk #1 succeeded at 1373 (offset 117 lines).
patching file src/nsterm.m
Hunk #1 succeeded at 1933 (offset 44 lines).
Hunk #2 succeeded at 5686 (offset 291 lines).
Hunk #3 succeeded at 5974 (offset 333 lines).
Hunk #4 succeeded at 6024 (offset 333 lines).
Hunk #5 succeeded at 6250 (offset 333 lines).
Hunk #6 succeeded at 9586 (offset 684 lines).
Hunk #7 succeeded at 10792 (offset 734 lines).
==> ./autogen.sh
==> ./configure --enable-locallisppath=/usr/local/share/emacs/site-lisp --infodi
==> gmake
Last 15 lines from /Users/nano/Library/Logs/Homebrew/emacs-plus@29/03.gmake:
Loading language/philippine (native compiled elisp)...
Loading language/indonesian (native compiled elisp)...
Loading indent (native compiled elisp)...
Loading emacs-lisp/cl-generic (native compiled elisp)...
Loading simple (native compiled elisp)...
Loading emacs-lisp/nadvice (native compiled elisp)...
Loading minibuffer (native compiled elisp)...
Loading frame (native compiled elisp)...
Loading startup (native compiled elisp)...
Attempt to autoload cl-prin1 while preparing to dump

Error: wrong-type-argument (stringp nil) gmake[1]: *** [Makefile:639: emacs.pdmp] Error 255 gmake[1]: Leaving directory '/private/tmp/emacs-plusA29-20220530-69588-m0lrzw/sr c' gmake: *** [Makefile:469: src] Error 2

If reporting this issue please do so at (not Homebrew/brew or Homebrew/core): https://github.com/d12frosted/homebrew-emacs-plus/issues

Output of brew config

$ brew config
HOMEBREW_VERSION: 3.4.11
ORIGIN: https://github.com/Homebrew/brew
HEAD: 30e3d8883cde265cbc16ff94b49a3ac14137590e
Last commit: 3 weeks ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: a119e80feb1ac2ad09d1335c4c7b590012cca927
Core tap last commit: 65 minutes ago
Core tap branch: master
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CASK_OPTS: []
HOMEBREW_CORE_GIT_REMOTE: https://github.com/Homebrew/homebrew-core
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.8 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: octa-core 64-bit westmere
Clang: 13.1.6 build 1316
Git: 2.32.0 => /Library/Developer/CommandLineTools/usr/bin/git
Curl: 7.77.0 => /usr/bin/curl
macOS: 12.2.1-x86_64
CLT: 13.3.0.0.1.1645755326
Xcode: N/A
Rosetta 2: true

Output of brew doctor

$ brew doctor
Your system is ready to brew.

femtochin avatar May 30 '22 12:05 femtochin

Interesting :thinking: Can't find anything on the mailing list. And I also can't reproduce it locally nor on CI. Maybe some random hiccup or breakage that is fixed by now. So please try again.

d12frosted avatar May 31 '22 11:05 d12frosted

Getting the same error.

e-eight avatar Jun 01 '22 22:06 e-eight

Hi,

I do have a similar problem.

Some relevant information :

I also found the following ressources mentioning what I thought being a similar problem :

Based on the second link, I tried different ar tools : the one pre-installed and the one coming from the binutils brew package, but it did not solve my issue. I also tried reinstalling xcode command line tools, but again, no luck

Do not hesitate if I can be of any more help

obenchekroun avatar Jun 02 '22 10:06 obenchekroun

Also running into this issue on M1. Tried installing both @28 & @29, both resulted in the same error.

Here's the logs from the command:

gmake[1]: *** [Makefile:924: bootstrap-emacs.pdmp] Killed: 9
gmake[1]: Leaving directory '/private/tmp/emacs-plusA29-20220616-72296-1074fhz/src'
gmake: *** [Makefile:469: src] Error 2
gmake: *** Waiting for unfinished jobs....
gmake[1]: Leaving directory '/private/tmp/emacs-plusA29-20220616-72296-1074fhz/doc/lispref'

Output from my brew config:

HOMEBREW_VERSION: 3.5.2
ORIGIN: https://github.com/Homebrew/brew
HEAD: fba051f98f609634ae4392d0053ddfc627f8cdb3
Last commit: 4 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 0873fe3888bd47bf2143d3e7a654d707cb80d110
Core tap last commit: 17 minutes ago
Core tap branch: master
HOMEBREW_PREFIX: /opt/homebrew
HOMEBREW_CASK_OPTS: []
HOMEBREW_CORE_GIT_REMOTE: https://github.com/Homebrew/homebrew-core
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.8 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: octa-core 64-bit arm_firestorm_icestorm
Clang: 13.1.6 build 1316
Git: 2.32.1 => /Library/Developer/CommandLineTools/usr/bin/git
Curl: 7.79.1 => /usr/bin/curl
macOS: 12.4-arm64
CLT: 13.4.0.0.1.1651278267
Xcode: N/A
Rosetta 2: false

mgmarlow avatar Jun 17 '22 01:06 mgmarlow

Getting the same error when building @29

khzaw avatar Jun 17 '22 04:06 khzaw

Sadly, I still have no ideas on how to solve it for you. I can't reproduce it on any of my machines.

d12frosted avatar Jun 17 '22 04:06 d12frosted

Somehow it worked couple days back when I tried again. No idea what was the problem.

e-eight avatar Jun 22 '22 17:06 e-eight

Trying again didn't fix the issue for me. That said, I was able to get emacs-plus working after some digging:

I tried debugging the formula locally and noticed that the temacs binary was failing on a SIGKILL. With some googling, stumbled upon this issue and this issue, where the authors were having similar trouble.

I uninstalled brew:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"

After reinstalling, I was able to build emacs-plus 28 w/o issue:

brew install emacs-plus --with-native-comp --with-cacodemon-icon

mgmarlow avatar Jun 23 '22 01:06 mgmarlow

Oh my, every time I hear that uninstalling brew helps to solve issues with it makes me cry. On the other hand, I am happy that it works for you now @mgmarlow.

d12frosted avatar Jun 23 '22 03:06 d12frosted

it's failing on mine with Error: void-function (file-relative-name). Older 2019, Intel chip Mac.

This seems to be an upstream issue:

cmd: brew install emacs-plus@29 --with-native-comp --with-xwidgets --verbose --with-modern-black-variant-icon

relevant point in the log
Error: void-function (file-relative-name)
  mapbacktrace((closure ((prin1 . prin1) t) (evald func args _flags) (let ((args args)) (if evald (progn (princ "  ") (funcall prin1 func) (princ "(")) (progn (princ "  (") (setq args (cons func args)))) (if args (while (progn (funcall prin1 (car args)) (setq args (cdr args))) (princ " "))) (princ ")\n"))))
  (let ((print-escape-newlines t) (print-escape-control-characters t) (print-escape-nonascii t) (prin1 (if (and (fboundp 'cl-prin1) (require 'cl-print nil t)) #'cl-prin1 #'prin1))) (mapbacktrace #'(lambda (evald func args _flags) (let ((args args)) (if evald (progn (princ "  ") (funcall prin1 func) (princ "(")) (progn (princ "  (") (setq args (cons func args)))) (if args (while (progn (funcall prin1 (car args)) (setq args (cdr args))) (princ " "))) (princ ")\n")))))
  debug-early-backtrace()
  debug-early(error (void-function file-relative-name))
  (file-relative-name load-file-name)
  (concat (file-relative-name load-file-name) ": ")
  (if (stringp load-file-name) (concat (file-relative-name load-file-name) ": ") "")
  (message "%sWarning: %s" (if (stringp load-file-name) (concat (file-relative-name load-file-name) ": ") "") msg)
  (if compile-only nil (message "%sWarning: %s" (if (stringp load-file-name) (concat (file-relative-name load-file-name) ": ") "") msg))
  (unless compile-only (message "%sWarning: %s" (if (stringp load-file-name) (concat (file-relative-name load-file-name) ": ") "") msg))
  (cond ((null msg) form) ((macroexp-compiling-p) (if (and (consp form) (gethash form macroexp--warned)) form (puthash form form macroexp--warned) (macroexp--warn-wrap (or arg form) msg form category))) (t (unless compile-only (message "%sWarning: %s" (if (stringp load-file-name) (concat (file-relative-name load-file-name) ": ") "") msg)) form))
  macroexp-warn-and-return("Unknown defun property `gv-setter'" nil nil nil gv-setter)
  (cond (f (apply (car f) name arglist (cdr x))) ((and (featurep 'cl) (memq (car x) '(special inline notinline optimize warn))) (push (list 'declare x) cl-decls) nil) (t (macroexp-warn-and-return (format-message "Unknown %s property `%S'" construct (car x)) nil nil nil (car x))))
  (let ((f (cdr (assq (car x) declarations-alist)))) (cond (f (apply (car f) name arglist (cdr x))) ((and (featurep 'cl) (memq (car x) '(special inline notinline optimize warn))) (push (list 'declare x) cl-decls) nil) (t (macroexp-warn-and-return (format-message "Unknown %s property `%S'" construct (car x)) nil nil nil (car x)))))
  (closure ((cl-decls) (declarations-alist (advertised-calling-convention byte-run--set-advertised-calling-convention) (obsolete byte-run--set-obsolete) (interactive-only byte-run--set-interactive-only) (pure byte-run--set-pure "If non-nil, the compiler can replace calls with their return value.\nThis may shift errors from run-time to compile-time.") (side-effect-free byte-run--set-side-effect-free "If non-nil, calls can be ignored if their value is unused.\nIf `error-free', drop calls even if `byte-compile-delete-errors' is nil.") (compiler-macro byte-run--set-compiler-macro) (doc-string byte-run--set-doc-string) (indent byte-run--set-indent) (speed byte-run--set-speed) (completion byte-run--set-completion) (modes byte-run--set-modes)) (construct . defun) (clauses (gv-setter (lambda (store) `(setcar (nthcdr 4 ,x) ,store)))) (arglist x) (name . cl-fifth) t) (x) (let ((f (cdr (assq (car x) declarations-alist)))) (cond (f (apply (car f) name arglist (cdr x))) ((and (featurep 'cl) (memq (car x) '(special inline notinline optimize warn))) (push (list 'declare x) cl-decls) nil) (t (macroexp-warn-and-return (format-message "Unknown %s property `%S'" construct (car x)) nil nil nil (car x))))))((gv-setter (lambda (store) `(setcar (nthcdr 4 ,x) ,store))))
  mapcar((closure ((cl-decls) (declarations-alist (advertised-calling-convention byte-run--set-advertised-calling-convention) (obsolete byte-run--set-obsolete) (interactive-only byte-run--set-interactive-only) (pure byte-run--set-pure "If non-nil, the compiler can replace calls with their return value.\nThis may shift errors from run-time to compile-time.") (side-effect-free byte-run--set-side-effect-free "If non-nil, calls can be ignored if their value is unused.\nIf `error-free', drop calls even if `byte-compile-delete-errors' is nil.") (compiler-macro byte-run--set-compiler-macro) (doc-string byte-run--set-doc-string) (indent byte-run--set-indent) (speed byte-run--set-speed) (completion byte-run--set-completion) (modes byte-run--set-modes)) (construct . defun) (clauses (gv-setter (lambda (store) `(setcar (nthcdr 4 ,x) ,store)))) (arglist x) (name . cl-fifth) t) (x) (let ((f (cdr (assq (car x) declarations-alist)))) (cond (f (apply (car f) name arglist (cdr x))) ((and (featurep 'cl) (memq (car x) '(special inline notinline optimize warn))) (push (list 'declare x) cl-decls) nil) (t (macroexp-warn-and-return (format-message "Unknown %s property `%S'" construct (car x)) nil nil nil (car x)))))) ((gv-setter (lambda (store) `(setcar (nthcdr 4 ,x) ,store)))))
  (let* ((cl-decls nil) (actions (mapcar #'(lambda (x) (let ((f (cdr (assq (car x) declarations-alist)))) (cond (f (apply (car f) name arglist (cdr x))) ((and (featurep 'cl) (memq (car x) '(special inline notinline optimize warn))) (push (list 'declare x) cl-decls) nil) (t (macroexp-warn-and-return (format-message "Unknown %s property `%S'" construct (car x)) nil nil nil (car x)))))) clauses))) (cons actions cl-decls))
  byte-run--parse-declarations(cl-fifth (x) ((gv-setter (lambda (store) `(setcar (nthcdr 4 ,x) ,store)))) defun ((advertised-calling-convention byte-run--set-advertised-calling-convention) (obsolete byte-run--set-obsolete) (interactive-only byte-run--set-interactive-only) (pure byte-run--set-pure "If non-nil, the compiler can replace calls with their return value.\nThis may shift errors from run-time to compile-time.") (side-effect-free byte-run--set-side-effect-free "If non-nil, calls can be ignored if their value is unused.\nIf `error-free', drop calls even if `byte-compile-delete-errors' is nil.") (compiler-macro byte-run--set-compiler-macro) (doc-string byte-run--set-doc-string) (indent byte-run--set-indent) (speed byte-run--set-speed) (completion byte-run--set-completion) (modes byte-run--set-modes)))
  (and declare-form (byte-run--parse-declarations name arglist (cdr declare-form) 'defun defun-declarations-alist))
  (let* ((parse (byte-run--parse-body body t)) (docstring (nth 0 parse)) (declare-form (nth 1 parse)) (interactive-form (nth 2 parse)) (body (nth 3 parse)) (warnings (nth 4 parse)) (declarations (and declare-form (byte-run--parse-declarations name arglist (cdr declare-form) 'defun defun-declarations-alist)))) (setq body (nconc warnings body)) (setq body (nconc (cdr declarations) body)) (if interactive-form (setq body (cons interactive-form body))) (if docstring (setq body (cons docstring body))) (if (null body) (setq body '(nil))) (let ((def (list 'defalias (list 'quote name) (list 'function (cons 'lambda (cons arglist body)))))) (if declarations (cons 'prog1 (cons def (car declarations))) def)))
  (closure (t) (name arglist &rest body) "Define NAME as a function.\nThe definition is (lambda ARGLIST [DOCSTRING] [INTERACTIVE] BODY...).\nDECL is a declaration, optional, of the form (declare DECLS...) where\nDECLS is a list of elements of the form (PROP . VALUES).  These are\ninterpreted according to `defun-declarations-alist'.\nINTERACTIVE is an optional `interactive' specification.\nThe return value is undefined.\n\n(fn NAME ARGLIST [DOCSTRING] [DECL] [INTERACTIVE] BODY...)" (or name (error "Cannot define '%s' as a function" name)) (if (null (and (listp arglist) (null (delq t (mapcar #'symbolp arglist))))) (error "Malformed arglist: %s" arglist)) (let* ((parse (byte-run--parse-body body t)) (docstring (nth 0 parse)) (declare-form (nth 1 parse)) (interactive-form (nth 2 parse)) (body (nth 3 parse)) (warnings (nth 4 parse)) (declarations (and declare-form (byte-run--parse-declarations name arglist (cdr declare-form) 'defun defun-declarations-alist)))) (setq body (nconc warnings body)) (setq body (nconc (cdr declarations) body)) (if interactive-form (setq body (cons interactive-form body))) (if docstring (setq body (cons docstring body))) (if (null body) (setq body '(nil))) (let ((def (list 'defalias (list 'quote name) (list 'function (cons 'lambda (cons arglist body)))))) (if declarations (cons 'prog1 (cons def (car declarations))) def))))(cl-fifth (x) "Return the fifth element of the list X." (declare (gv-setter (lambda (store) `(setcar (nthcdr 4 ,x) ,store)))) (nth 4 x))
  (defun cl-fifth (x) "Return the fifth element of the list X." (declare (gv-setter (lambda (store) `(setcar (nthcdr 4 ,x) ,store)))) (nth 4 x))
  (prog1 (defun cl-fifth (x) "Return the fifth element of the list X." (declare (gv-setter (lambda (store) `(setcar (nthcdr 4 ,x) ,store)))) (nth 4 x)) (eval-and-compile (function-put 'cl-fifth 'speed '-1) (put 'cl-fifth 'byte-optimizer 'byte-compile-inline-expand)))
  eval-buffer(#<buffer  *load*-865978> nil "/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/emacs-lisp/cl-lib.el" nil t)
  (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t))
  (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))
  (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t))))
  (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer)))
  (let ((buffer (generate-new-buffer " *load*")) (load-in-progress t) (source (string-suffix-p ".el" fullname))) (unless nomessage (if source (message "Loading %s (source)..." file) (message "Loading %s..." file))) (when purify-flag (push (purecopy file) preloaded-file-list)) (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer))) (do-after-load-evaluation fullname) (unless (or nomessage noninteractive) (if source (message "Loading %s (source)...done" file) (message "Loading %s...done" file))) t)
  (if (null (file-readable-p fullname)) (and (null noerror) (signal 'file-error (list "Cannot open load file" file))) (let ((buffer (generate-new-buffer " *load*")) (load-in-progress t) (source (string-suffix-p ".el" fullname))) (unless nomessage (if source (message "Loading %s (source)..." file) (message "Loading %s..." file))) (when purify-flag (push (purecopy file) preloaded-file-list)) (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer))) (do-after-load-evaluation fullname) (unless (or nomessage noninteractive) (if source (message "Loading %s (source)...done" file) (message "Loading %s...done" file))) t))
  load-with-code-conversion("/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/emacs-lisp/cl-lib.el" "/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/emacs-lisp/cl-lib.el" nil t)
  require(cl-lib)
  (progn (require 'cl-lib))
  eval((progn (require 'cl-lib)) t)
  (list 'quote (eval (cons 'progn body) lexical-binding))
  (closure (t) (&rest body) "Like `progn', but evaluates the body at compile time if you're compiling.\nThus, the result of the body appears to the compiler as a quoted\nconstant.  In interpreted code, this is entirely equivalent to\n`progn', except that the value of the expression may be (but is\nnot necessarily) computed at load time if eager macro expansion\nis enabled." (list 'quote (eval (cons 'progn body) lexical-binding)))((require 'cl-lib))
  (eval-when-compile (require 'cl-lib))
  eval-buffer(#<buffer  *load*-126456> nil "/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/emacs-lisp/subr-x.el" nil t)
  (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t))
  (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))
  (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t))))
  (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer)))
  (let ((buffer (generate-new-buffer " *load*")) (load-in-progress t) (source (string-suffix-p ".el" fullname))) (unless nomessage (if source (message "Loading %s (source)..." file) (message "Loading %s..." file))) (when purify-flag (push (purecopy file) preloaded-file-list)) (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer))) (do-after-load-evaluation fullname) (unless (or nomessage noninteractive) (if source (message "Loading %s (source)...done" file) (message "Loading %s...done" file))) t)
  (if (null (file-readable-p fullname)) (and (null noerror) (signal 'file-error (list "Cannot open load file" file))) (let ((buffer (generate-new-buffer " *load*")) (load-in-progress t) (source (string-suffix-p ".el" fullname))) (unless nomessage (if source (message "Loading %s (source)..." file) (message "Loading %s..." file))) (when purify-flag (push (purecopy file) preloaded-file-list)) (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer))) (do-after-load-evaluation fullname) (unless (or nomessage noninteractive) (if source (message "Loading %s (source)...done" file) (message "Loading %s...done" file))) t))
  load-with-code-conversion("/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/emacs-lisp/subr-x.el" "/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/emacs-lisp/subr-x.el" nil t)
  require(subr-x)
  (progn (require 'pcase) (require 'easy-mmode) (require 'subr-x))
  eval((progn (require 'pcase) (require 'easy-mmode) (require 'subr-x)) t)
  (list 'quote (eval (cons 'progn body) lexical-binding))
  (closure (t) (&rest body) "Like `progn', but evaluates the body at compile time if you're compiling.\nThus, the result of the body appears to the compiler as a quoted\nconstant.  In interpreted code, this is entirely equivalent to\n`progn', except that the value of the expression may be (but is\nnot necessarily) computed at load time if eager macro expansion\nis enabled." (list 'quote (eval (cons 'progn body) lexical-binding)))((require 'pcase) (require 'easy-mmode) (require 'subr-x))
  (eval-when-compile (require 'pcase) (require 'easy-mmode) (require 'subr-x))
  eval-buffer(#<buffer  *load*> nil "/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/files.el" nil t)
  (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t))
  (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))
  (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t))))
  (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer)))
  (let ((buffer (generate-new-buffer " *load*")) (load-in-progress t) (source (string-suffix-p ".el" fullname))) (unless nomessage (if source (message "Loading %s (source)..." file) (message "Loading %s..." file))) (when purify-flag (push (purecopy file) preloaded-file-list)) (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer))) (do-after-load-evaluation fullname) (unless (or nomessage noninteractive) (if source (message "Loading %s (source)...done" file) (message "Loading %s...done" file))) t)
  (if (null (file-readable-p fullname)) (and (null noerror) (signal 'file-error (list "Cannot open load file" file))) (let ((buffer (generate-new-buffer " *load*")) (load-in-progress t) (source (string-suffix-p ".el" fullname))) (unless nomessage (if source (message "Loading %s (source)..." file) (message "Loading %s..." file))) (when purify-flag (push (purecopy file) preloaded-file-list)) (unwind-protect (let ((load-true-file-name fullname) (load-file-name fullname) (set-auto-coding-for-load t) (inhibit-file-name-operation nil) shorthands) (with-current-buffer buffer (set-buffer-multibyte t) (let (deactivate-mark) (insert-file-contents fullname)) (setq shorthands (and hack-read-symbol-shorthands-function (funcall hack-read-symbol-shorthands-function))) (if (and enable-multibyte-characters (or (eq (coding-system-type last-coding-system-used) 'raw-text))) (set-buffer-multibyte nil)) (set-buffer-modified-p nil)) (let ((read-symbol-shorthands shorthands)) (if eval-function (funcall eval-function buffer (if dump-mode file fullname)) (eval-buffer buffer nil (if dump-mode file fullname) nil t)))) (let (kill-buffer-hook kill-buffer-query-functions) (kill-buffer buffer))) (do-after-load-evaluation fullname) (unless (or nomessage noninteractive) (if source (message "Loading %s (source)...done" file) (message "Loading %s...done" file))) t))
  load-with-code-conversion("/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/files.el" "/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/lisp/files.el" nil nil)
  load("files")
  load("loadup.el")
gmake[1]: *** [Makefile:924: bootstrap-emacs.pdmp] Error 255
gmake[1]: Leaving directory '/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/src'
gmake: *** [Makefile:469: src] Error 2
gmake: *** Waiting for unfinished jobs....
gmake[1]: Leaving directory '/private/tmp/emacs-plusA29-20220624-11298-1ffkm3v/doc/lispref'

agzam avatar Jun 24 '22 20:06 agzam

Damn it. I reinstalled brew, now I can't install 29 at all. Even without native-comp flag.

agzam avatar Jun 24 '22 21:06 agzam

I'm also running into this issue.

The error message:

In toplevel form:
cedet/semantic/symref/list.el:35:2: Error: Given parent class semantic-displayer-abstract is not a class
gmake[2]: *** [Makefile:336: cedet/semantic/symref/list.elc] Error 1
gmake[2]: *** Waiting for unfinished jobs....
gmake[2]: Leaving directory '/private/tmp/emacs-plusA29-20220802-55189-u97rcc/lisp'
gmake[1]: *** [Makefile:366: compile-main] Error 2
gmake[1]: Leaving directory '/private/tmp/emacs-plusA29-20220802-55189-u97rcc/lisp'
gmake: *** [Makefile:456: lisp] Error 2

Do not report this issue to Homebrew/brew or Homebrew/core!

These open issues may also help:
Could not install emacs-plus@28 because tar can't find xz  https://github.com/d12frosted/homebrew-emacs-plus/issues/481
Could not install with ``brew install emacs-plus@29 --with-native-comp --with-elrumo2-icon`` https://github.com/d12frosted/homebrew-emacs-plus/issues/473

Reinstalling brew doesn't seem to help.....

joanimato avatar Aug 02 '22 22:08 joanimato

Same issue since I have libgccjit 12.1.0 from brew upgrade

configure: error: ELisp native compiler was requested, but libgccjit was not found.
Please try installing libgccjit or a similar package.

Blanen avatar Aug 08 '22 13:08 Blanen

@Blanen,

I just ran into the same problem.

ryanhageman avatar Aug 08 '22 15:08 ryanhageman

Same issue since I have libgccjit 12.1.0 from brew upgrade

configure: error: ELisp native compiler was requested, but libgccjit was not found.
Please try installing libgccjit or a similar package.

I got the same problem, searched for related issues and found this one https://github.com/Homebrew/homebrew-core/issues/107529. Seems it needs to update this line https://github.com/d12frosted/homebrew-emacs-plus/blob/49b153e56cf975531f31b1648f9e003fa557d040/patches/emacs-28/fix-MAC_LIBS-inference-on-Intel.patch#L20

tennix avatar Aug 08 '22 15:08 tennix

@tennix yup, but that patch is only for Emacs 28. Basically I did it for Emacs 28 and Emacs 29, but then master branch of Emacs accepted similar patch, so it was needed only for Emacs 28. Now that new gcc is out and the brew team did some path changes in the gcc/libgccjit formula, I think we need another patch that fixes discoverability of libgccjit in Emacs 29 untill Emacs upstream fixes it.

Context: https://github.com/d12frosted/homebrew-emacs-plus/issues/455#issuecomment-1113106610

d12frosted avatar Aug 09 '22 06:08 d12frosted

See #492 for potential fix for libgccjit issue reported by @Blanen, @ryanhageman and @tennix . But it's unrelated to other issues reported here. Please use #485 for libgccjit related issues.

d12frosted avatar Aug 09 '22 06:08 d12frosted

Wait, it's becoming a mess, because original error reported by @femtochin is not related to gcc update that broke libgccjit discovery. I've renamed this issue to clearly state that.

d12frosted avatar Aug 09 '22 06:08 d12frosted

I have seen similar errors recently. It builds fine at first, failed a week later I tried to get the latest. Today I finally got mine consistently working by rm -rf the cache folder (normally ~/Library/Caches/Homebrew/emacs-plus@29--git). Hopefully, this can help people.

xiaoxinghu avatar Jan 13 '23 05:01 xiaoxinghu

@xiaoxinghu possibly you are hit by https://github.com/d12frosted/homebrew-emacs-plus/issues/543

BTW, seems like this issue (e.g. #473) is not relevant anymore, so closing it.

d12frosted avatar Jan 13 '23 08:01 d12frosted

@xiaoxinghu possibly you are hit by #543

BTW, seems like this issue (e.g. #473) is not relevant anymore, so closing it.

You are right! Thank you very much.

xiaoxinghu avatar Jan 14 '23 20:01 xiaoxinghu