-
Notifications
You must be signed in to change notification settings - Fork 151
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Straight freezed at Building auctex
forever.
#836
Comments
I would check the output of the *straight-process-buffer* and *straight-byte-compilation* buffers to see if there are any errors. If there are not, I would manually try invoking the pre-build steps via the command line in the repository to see if they work in your regular shell environment. |
When the
Yes. It works smoothly. |
In that case I would try adding (setq debug-on-quit t) Prior to the If that does not work you can try sending the SIGUSR2 signal to Emacs from the command line as described here: |
I was able to successfully install with this recipe: (straight-bug-report
:interactive t
:user-dir "auctex.straight"
:post-bootstrap
(setq debug-on-quit t)
(straight-use-package
'(auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git"
:pre-build (("autoconf")
("autoupdate")
("./autogen.sh")
("./configure" "--without-texmf-dir" "--with-lispdir=.")
("make"))))) Though I did have to install the required tex system packages. |
I tried with your above code snippet, but meet the following warning and get stopped there:
Then I tried the following code: (setq debug-on-quit t)
(straight-use-package
'(auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git"
:pre-build (("autoconf")
("autoupdate")
("./autogen.sh")
("./configure" "--without-texmf-dir" "--with-lispdir=.")
("make"))))
See the following: Debugger entered--Lisp error: (quit)
call-process("/home/werner/.emacs.d/straight/repos/auctex/config..." nil (#<buffer *temp*> "/tmp/straight-stderr-30020") nil "--without-texmf-dir" "--with-lispdir=.")
apply(call-process "/home/werner/.emacs.d/straight/repos/auctex/config..." nil (#<buffer *temp*> "/tmp/straight-stderr-30020") nil ("--without-texmf-dir" "--with-lispdir=."))
straight--process-call("./configure" "--without-texmf-dir" "--with-lispdir=.")
apply(straight--process-call "./configure" ("--without-texmf-dir" "--with-lispdir=."))
straight--process-run("./configure" "--without-texmf-dir" "--with-lispdir=.")
apply(straight--process-run "./configure" ("--without-texmf-dir" "--with-lispdir=."))
straight--process-run-p("./configure" "--without-texmf-dir" "--with-lispdir=.")
apply(straight--process-run-p ("./configure" "--without-texmf-dir" "--with-lispdir=."))
straight--run-build-commands((:type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git" :pre-build (("autoconf") ("autoupdate") ("./autogen.sh") ("./configure" "--without-texmf-dir" "--with-lispdir=.") ("make")) :files ("*" (:exclude ".git")) :package "auctex" :local-repo "auctex"))
straight--build-package((:type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git" :pre-build (("autoconf") ("autoupdate") ("./autogen.sh") ("./configure" "--without-texmf-dir" "--with-lispdir=.") ("make")) :files ("*" (:exclude ".git")) :package "auctex" :local-repo "auctex") nil)
#f(compiled-function () #<bytecode -0x17fc52cb6bf6aedb>)()
straight--transaction-exec(use-package-\(:type\ git\ :host\ nil\ :repo\ \"https://git\.savannah\.gnu\.org/git/auctex\.git\"\ :pre-build\ \(\(\"autoconf\"\)\ \(\"autoupdate\"\)\ \(\"\./autogen\.sh\"\)\ \(\"\./configure\"\ \"--without-texmf-dir\"\ \"--with-lispdir=\.\"\)\ \(\"make\"\)\)\ :files\ \(\"*\"\ \(:exclude\ \"\.git\"\)\)\ :package\ \"auctex\"\ :local-repo\ \"auctex\"\)-nil-nil :now #f(compiled-function () #<bytecode -0x17fc52cb6bf6aedb>))
straight-use-package((auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git" :pre-build (("autoconf") ("autoupdate") ("./autogen.sh") ("./configure" "--without-texmf-dir" "--with-lispdir=.") ("make")) :files ("*" (:exclude ".git"))))
eval-buffer(#<buffer *load*> nil "/home/werner/.emacs.d/init.el" nil t) ; Reading at buffer position 15367
load-with-code-conversion("/home/werner/.emacs.d/init.el" "/home/werner/.emacs.d/init.el" t t)
load("/home/werner/.emacs.d/init" noerror nomessage)
startup--load-user-init-file(#f(compiled-function () #<bytecode 0xe873284c9c18f52>) #f(compiled-function () #<bytecode -0x1f3c686ddc0ddd35>) t)
command-line()
normal-top-level()
|
Is there any output in the *straight-process-buffer* after exiting that backtrace? |
The |
How to exit that backtrace? I see the followng in
|
It looks as if the snag is occurring during the |
|
What happens if you drop the args to the configure script in the recipe? |
(straight-use-package
'(auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git"
:pre-build (("./autogen.sh") ("./configure") ("make")))) |
With the following code: (setq debug-on-quit t)
(straight-use-package
'(auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git"
:pre-build (("./autogen.sh") ("./configure") ("make")))) The backtrace info obtained by
|
How long are you letting the process run before quitting? |
Sufficient length of time. See the following:
|
I also tried with the following code, but meet the similar problem: (setq debug-on-quit t)
(straight-use-package
'(auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git"
:pre-build (
;("autoconf")
;("autoupdate")
;("./autogen.sh")
;("./configure" "--without-texmf-dir" "--with-lispdir=.")
;("make")
(shell-command "./autogen.sh && ./configure --without-texmf-dir --with-lispdir=. && make")
))) |
Anyway, if I first run the corresponding shell commands in the $ autoconf && autoupdate && ./autogen.sh && ./configure --without-texmf-dir --with-lispdir=. && make
#or
$ ./autogen.sh && ./configure --without-texmf-dir --with-lispdir=. && make
#or
$ ./autogen.sh && ./configure && make Then just let (straight-use-package
'(auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git")) |
Came across your post on the emacs-devel archive today: https://lists.gnu.org/archive/html/emacs-devel/2021-08/msg00564.html In general, the appropriate place to report Emacs bugs is: https://lists.gnu.org/archive/html/bug-gnu-emacs/ However, it's unlikely that this is an Emacs bug. Try evaluating the following in your *scratch* buffer: (straight-bug-report
:user-dir "auctex.straight"
:post-bootstrap
(straight-vc-git-clone
(straight--convert-recipe (straight-recipes-retrieve 'auctex)) nil)
(let ((default-directory (straight--repos-dir "auctex"))
(buffer (get-buffer-create "* straight-bug *")))
(dolist (command '("autouconf" "autoupdate" "./autogen.sh" "./configure"))
(shell-command command buffer buffer))
(message "%S" (with-current-buffer buffer (buffer-string))))) The output from the commands will be collected in a buffer named * straight-bug *. |
I agree with you. In fact, I've cross posted my discussion both on emacs-devel and auctex mailing lists. Your hunch is consistent with the following comment from Tassilo Horn:
I can't find the
And I also encounter with the following output, but to be frank, at the subsequent testings, I can't reproduce the same messages, or do not know how to call the corresponding message: Test Case(straight-bug-report
:user-dir "auctex.straight"
:post-bootstrap
(straight-vc-git-clone
(straight--convert-recipe
(straight-recipes-retrieve 'auctex))
nil)
(let
((default-directory
(straight--repos-dir "auctex"))
(buffer
(get-buffer-create "* straight-bug *")))
(dolist
(command
'("autouconf" "autoupdate" "./autogen.sh" "./configure")) Should be
OutputBootstrapping straight.el...
Bootstrapping straight.el...done
Rebuilding all packages due to build cache schema change
Looking for gnu-elpa-mirror recipe → Cloning melpa...
Looking for gnu-elpa-mirror recipe → Cloning melpa...done
Looking for emacsmirror-mirror recipe → Cloning gnu-elpa-mirror...
Looking for emacsmirror-mirror recipe → Cloning gnu-elpa-mirror...done
Looking for emacsmirror-mirror recipe → Cloning el-get...
Looking for emacsmirror-mirror recipe → Cloning el-get...done
Looking for straight recipe → Cloning emacsmirror-mirror...
Looking for straight recipe → Cloning emacsmirror-mirror...done
Building straight...
Building straight...done
Test run with version: prerelease (HEAD -> develop, origin/develop) 45eb611 2021-08-13
(Shell command failed with code 127 and some error output)
(Shell command succeeded with no output)
(Shell command failed with code 126 and some error output)
(Shell command failed with code 127 and some error output)
"/bin/bash: line 1: ./configure: No such file or directory
"
Packages:
"org-elpa" n/a n/a
"melpa" n/a master 949eb5d8 2021-08-15
"gnu-elpa-mirror" n/a master 8ce05c5 2021-08-10
"el-get" melpa master ec47ecf2 2021-08-17
"emacsmirror-mirror" n/a master cf43858 2021-08-17
"straight" n/a develop 45eb611 2021-08-13
|
Apologies for the typo. I'm not sure I follow you in the thread auctex dev thread you've linked. From the thread you've linked:
What did you mean by "cursor/point always stays in busy state"? It's important to run these steps in a clean environment each time.
That's fine, the
I'm not sure what you mean by "know how to call the corresponding message". I did discover that emacs-straight's mirror of auctex is missing https://github.com/emacs-straight/auctex @raxod502 would have more insight into that than I. So let's bypass that mirror as well as straight's Test Case(straight-bug-report
:user-dir "auctext.straight"
:post-bootstrap
(straight-use-package
'(auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git" :build nil))
(let
((default-directory
(straight--repos-dir "auctex"))
(buffer
(get-buffer-create "* straight-bug *")))
(dolist
(command
'("autoconf" "autoupdate" "./autogen.sh" "./configure"))
(shell-command command buffer buffer))
(message "%S"
(with-current-buffer buffer
(buffer-string)))))
OutputBootstrapping straight.el...
Bootstrapping straight.el...done
Rebuilding all packages due to build cache schema change
Looking for gnu-elpa-mirror recipe -> Cloning melpa...
Looking for gnu-elpa-mirror recipe -> Cloning melpa...done
Looking for emacsmirror-mirror recipe -> Cloning gnu-elpa-mirror...
Looking for emacsmirror-mirror recipe -> Cloning gnu-elpa-mirror...done
Looking for emacsmirror-mirror recipe -> Cloning el-get...
Looking for emacsmirror-mirror recipe -> Cloning el-get...done
Looking for straight recipe -> Cloning emacsmirror-mirror...
Looking for straight recipe -> Cloning emacsmirror-mirror...done
Building straight...
Building straight...done
Test run with version: prerelease (HEAD -> develop, origin/develop) 45eb611 2021-08-13
Cloning auctex...
Cloning auctex...done
(Shell command succeeded with some error output)
(Shell command succeeded with no output)
"checking for make... make
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for date with git... 2021-08-20
checking for release with git... not found, using 2021-08-20 instead
checking for date with git... 2021-08-20
checking for release with git... not found, using 2021-08-20 instead
checking for emacs... /usr/bin/emacs
checking for Emacs prefix... \"/usr\"
checking if Emacs is recent enough... yes
checking if build directory is valid... yes
checking where lisp files go... /usr/share/emacs/site-lisp
checking what file to use for auctex startup... /usr/share/emacs/site-lisp/auctex.el
checking what file to use for preview startup... /usr/share/emacs/site-lisp/preview-latex.el
checking where the package lisp files go... /usr/share/emacs/site-lisp/auctex
checking where the data files go... /usr/share/emacs/site-lisp/auctex
checking where the info files go... ${datarootdir}/info
checking where automatically generated global style hooks go... ${localstatedir}/auctex
checking for tex... /usr/bin/tex
checking for pdftex... /usr/bin/pdftex
checking for dvips... /usr/bin/dvips
checking for gs... no
checking for GSWIN32C.EXE... no
checking for latex... /usr/bin/latex
checking for pdflatex... /usr/bin/pdflatex
checking for tex... (cached) /usr/bin/tex
checking for prefix from kpsepath... \"/usr\"
checking for TDS-compliant directory... no
checking for TeX directory hierarchy... /usr/share/texmf-dist/tex/latex
Preview will be placed in /usr/share/texmf-dist/tex/latex/preview
Preview docs will be placed in /usr/share/texmf-dist/tex/latex/preview
checking for texhash... /usr/bin/texhash
checking for initexmf... /usr/bin/texhash
checking for glaring installation conflicts... probably none
checking for perl... /usr/bin/perl
checking for makeinfo... /usr/bin/makeinfo
checking for texi2html... :
checking for texi2dvi... /usr/bin/texi2dvi
checking for texi2pdf... /usr/bin/texi2pdf
checking for install-info... /usr/bin/install-info
configure: creating ./config.status
config.status: creating Makefile
config.status: creating tex-site.el.out
config.status: creating doc/Makefile
config.status: creating auctex.el
config.status: creating preview.el
config.status: creating latex/Makefile
Congratulations! Configuration of AUCTeX is complete.
Type \"make\" at the prompt to build.
"
Packages:
"org-elpa" n/a n/a
"melpa" n/a master 949eb5d8 2021-08-15
"gnu-elpa-mirror" n/a master 8ce05c5 2021-08-10
"el-get" melpa master ec47ecf2 2021-08-17
"emacsmirror-mirror" n/a master cf43858 2021-08-17
"straight" n/a develop 45eb611 2021-08-13
"auctex" gnu-elpa-mirror master 578bdfdf 2021-08-20
|
Yes.
I don't know how to accurately describe what I see. Basically, I see the following: The mouse will change into a wheel that never stops spinning there.
I mean, I don’t know how to get the output of the evaluation test case I posted here. It seems that I randomly encountered the output.
In general, I meet the following after an enough long of running: |
So it still hangs when we bypass straight's build machinery.
I would let Emacs run until it hangs and then take a look at your computer's resources via |
It seems not. |
Maybe let it sit and see if it finishes. |
This is just the way I test it. I use the #!/usr/bin/env bash
:;#https://www.reddit.com/r/emacs/comments/a7ubx5/an_interactive_executable_combined_bash_and_emacs/
:;#https://github.com/alphapapa/matrix-client.el/blob/d2ac55293c96d4c95971ed8e2a3f6f354565c5ed/matrix-client-standalone.el.sh#L64-L81
:;# emacs -Q --insert <(tail -n +$(grep -n -m 1 -x ";;Bootstrap straight" "$0" | egrep -o '^[[:digit:]]+') "$0"); exit
:;#https://github.com/hlissner/doom-emacs/blob/develop/bin/doom
:;#https://lists.gnu.org/archive/html/help-gnu-emacs/2021-08/msg00101.html
:;#https://groups.google.com/g/comp.unix.shell/c/krxzfCd_8qM/m/W2Lc5W-jCAAJ
:;#https://groups.google.com/g/comp.unix.shell/c/krxzfCd_8qM/m/ryoNs9AGCQAJ
:; emacs -Q --load $(realpath -e $0) -- "$@"; exit
:;# or
:;# exec emacs -Q --load $(realpath -e $0) -- "$@"
;;Bootstrap straight
(defvar bootstrap-version)
(let ((bootstrap-file
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
(bootstrap-version 5))
(unless (file-exists-p bootstrap-file)
(with-current-buffer
(url-retrieve-synchronously
"https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
'silent 'inhibit-cookies)
(goto-char (point-max))
(eval-print-last-sexp)))
(load bootstrap-file nil 'nomessage))
(straight-use-package 'use-package)
(setq straight-use-package-by-default t)
Run the above script with (straight-bug-report
:user-dir "auctext.straight"
:post-bootstrap
(straight-use-package
'(auctex :type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git" :build nil))
(let
((default-directory
(straight--repos-dir "auctex"))
(buffer
(get-buffer-create "* straight-bug *")))
(dolist
(command
'("autoconf" "autoupdate" "./autogen.sh" "./configure"))
(shell-command command buffer buffer))
(message "%S"
(with-current-buffer buffer
(buffer-string))))) Even time has elapsed more than 10 minutes, it still does the job there.
I have a hunch that this may be triggered by some operating system specific problems.
What's your OS? |
The machine I was testing from is running Arch. There's a environmental difference, for sure. I'll have to see if I can spin up an Ubuntu VM when I have some free time to test in. |
I've been unable to reproduce this. Closing for now, but if you have any information to reliably reproduce this, feel free to share it and we can investigate. |
Today, I tried the problem discussed here again and found that it worked well with the following configuration, so I post it here, just FYI: (use-package auctex
:straight (:type git :host nil :repo "https://git.savannah.gnu.org/git/auctex.git"
:pre-build (
("./autogen.sh")
("./configure" "--without-texmf-dir" "--with-lispdir=.")
("make")
;;or
;(shell-command "./autogen.sh && ./configure --without-texmf-dir --with-lispdir=. && make")
)
)
:mode
; https://www.mail-archive.com/auctex@gnu.org/msg07608.html
; https://www.gnu.org/software/emacs/manual/html_node/reftex/Installation.html
("\\.tex\\'" . latex-mode) ; Must first activate the inferior Emacs latex mode
:hook
(LaTeX-mode . TeX-PDF-mode)
(LaTeX-mode . company-mode)
(LaTeX-mode . flyspell-mode)
(LaTeX-mode . flycheck-mode)
(LaTeX-mode . LaTeX-math-mode)
(LaTeX-mode . turn-on-reftex)
(LaTeX-mode . turn-on-cdlatex)
:init
(load "auctex.el" nil t t)
(load "preview-latex.el" nil t t)
(require 'reftex)
(setq-default TeX-master 'dwim)
(setq TeX-data-directory (straight--repos-dir "auctex")
TeX-lisp-directory TeX-data-directory
; Or custom-set-variables as follows.
; M-x describe-variable RET preview-TeX-style-dir RET
;`(preview-TeX-style-dir ,(concat ".:" (straight--repos-dir "auctex") "latex:"))
preview-TeX-style-dir (concat ".:" (straight--repos-dir "auctex") "latex:")
TeX-parse-self t ; parse on load
TeX-auto-save t ; parse on save
TeX-auto-untabify t ; Automatically remove all tabs from a file before saving it.
;Type of TeX engine to use.
;It should be one of the following symbols:
;* ‘default’
;* ‘luatex’
;* ‘omega’
;* ‘xetex’
TeX-engine 'xetex
TeX-auto-local ".auctex-auto" ; Directory containing automatically generated TeX information.
TeX-style-local ".auctex-style" ; Directory containing hand generated TeX information.
;; ##### Enable synctex correlation.
;; ##### From Okular just press `Shift + Left click' to go to the good line.
;; ##### From Evince just press `Ctrl + Left click' to go to the good line.
TeX-source-correlate-mode t
TeX-source-correlate-method 'synctex
TeX-source-correlate-start-server t
;; automatically insert braces after sub/superscript in math mode
TeX-electric-sub-and-superscript t
;; If non-nil, then query the user before saving each file with TeX-save-document.
TeX-save-query nil
TeX-view-program-selection '((output-pdf "PDF Tools"))
)) See here for some relevant configuration. What needs to be pointed out is: The auctex relevant configuration must be set in the |
Now, I've updated to Ubuntu 20.04.2 LTS, and use the following configuration as recipe to install auctex:
But Emacs is stuck at
Building auctex
forever, as shown below:OTOH, if I commented out the
:pre-build
directive as follows:Then each time when I start Emacs,
autctex
will be built bystraight
, and the following message will appear:Building auctex...done
Regards,
HY
The text was updated successfully, but these errors were encountered: