Opened 7 weeks ago

Last modified 3 weeks ago

#71047 assigned defect

emacs-app @29.4_1+imagemagick+nativecomp+rsvg+treesitter: Failed to activate

Reported by: eschnett (Erik Schnetter) Owned by: drkp (Dan Ports)
Priority: Normal Milestone:
Component: ports Version: 2.10.2
Keywords: sequoia arm64 Cc: catap (Kirill A. Korinsky), jmroot (Joshua Root), jjstickel (Jonathan Stickel), l2dy (Zero King), kanreki
Port: emacs-app

Description

I am trying to install emacs-app "+imagemagick+nativecomp+rsvg+treesitter". This fails:

$ sudo port install emacs-app "+imagemagick+nativecomp+rsvg+treesitter"
--->  Computing dependencies for emacs-app
--->  Activating emacs-app @29.4_1+imagemagick+nativecomp+rsvg+treesitter
Error: Failed to activate emacs-app: Image error: Source file /opt/local/var/macports/software/emacs-app/emacs-app-29.4_1+imagemagick+nativecomp+rsvg+treesitter.darwin_24.arm64/Applications/MacPorts/Emacs.app/Contents/Frameworks/native-lisp/29_4-ca101c6e/subr--trampoline-782d7365727665722d6d61782d726571756573742d73697a65_x_server_max_request_size_0.eln does not appear to exist.  Unable to activate port emacs-app.
    while executing
"throw registry::image-error "Image error: Source file $srcfile does not appear to exist.  Unable to activate port ${portname}.""
    ("foreach" body line 10)
    invoked from within
"foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_total_steps
                se..."
    invoked from within
"registry::write {
            foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_..."
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_editors_emacs/emacs-app/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.
Error: Processing of port emacs-app failed

Attachments (2)

main.log (11.4 KB) - added by eschnett (Erik Schnetter) 6 weeks ago.
main.2.log (3.8 MB) - added by eschnett (Erik Schnetter) 6 weeks ago.
Log file including build output

Change History (18)

comment:1 Changed 7 weeks ago by eschnett (Erik Schnetter)

I am running Sequoia 15.0.1 on

Darwin Redshift-3.local 24.0.0 Darwin Kernel Version 24.0.0: Tue Sep 24 23:37:25 PDT 2024; root:xnu-11215.1.12~1/RELEASE_ARM64_T6030 arm64 arm Darwin

comment:2 Changed 6 weeks ago by ryandesign (Ryan Carsten Schmidt)

Cc: catap added; kirill@… removed
Keywords: sequoia arm64 added
Owner: set to drkp
Status: newassigned
Summary: emacs-app 29.4_1 [+imagemagick+nativecomp+rsvg+treesitter]: Error when activatingemacs-app @29.4_1+imagemagick+nativecomp+rsvg+treesitter: Failed to activate

Please attach the main.log file.

Changed 6 weeks ago by eschnett (Erik Schnetter)

Attachment: main.log added

comment:3 Changed 6 weeks ago by eschnett (Erik Schnetter)

Attached.

comment:4 Changed 6 weeks ago by ryandesign (Ryan Carsten Schmidt)

Version: 2.10.2

Josh, is this a base bug? The log doesn't have much in it. No fetching, no building, just failed activation.

comment:5 Changed 6 weeks ago by ryandesign (Ryan Carsten Schmidt)

Cc: jmroot added

comment:6 Changed 6 weeks ago by jmroot (Joshua Root)

Hard to say. If the file is actually missing from the image, it's WAI.

comment:7 Changed 6 weeks ago by ryandesign (Ryan Carsten Schmidt)

So then maybe the next troubleshooting step is to uninstall the port, clean it, and try to install it again. Try:

sudo port clean emacs-app
sudo port uninstall emacs-app
sudo port install emacs-app +imagemagick +nativecomp +rsvg +treesitter

If it fails again, please attach the new main.log file; maybe it will have more complete information in it.

Changed 6 weeks ago by eschnett (Erik Schnetter)

Attachment: main.2.log added

Log file including build output

comment:8 Changed 6 weeks ago by eschnett (Erik Schnetter)

Done. The build still fails, with the same error message.

comment:9 Changed 6 weeks ago by ryandesign (Ryan Carsten Schmidt)

But you'll notice the new log is 3.8MB compared to the old log's 11.4KB so we now have more information we can analyze.

For example, I see this in the new log:

:info:install a ./Applications/MacPorts/Emacs.app/Contents/Frameworks/native-lisp/29_4-ca101c6e/subr--trampoline-782d7365727665722d6d61782d726571756573742d73697a65_x_server_max_request_size_0.eln
:info:install a ./Applications/MacPorts/Emacs.app/Contents/Frameworks/native-lisp/29_4-ca101c6e/ebnf-dtd-3a6441e4-ed9e4a3a.eln
:info:install x ./Applications/MacPorts/Emacs.app/Contents/Frameworks/native-lisp/29_4-ca101c6e/._subr--trampoline-782d7365727665722d6d61782d726571756573742d73697a65_x_server_max_request_size_0.eln
:info:install x ./Applications/MacPorts/Emacs.app/Contents/Frameworks/native-lisp/29_4-ca101c6e/ebnf-dtd-3a6441e4-ed9e4a3a.elna ./Applications/MacPorts/Emacs.app/Contents/Frameworks/native-lisp/29_4-ca101c6e/vcursor-f24573d4-9fbe65a0.eln

Lines beginning with a are adding files to an archive. Lines beginning with x are extracting files from an archive. They seem to be happening simultaneously. This seems unusual to me but the way that ports are activated was overhauled in MacPorts 2.10.0 and I am not yet familiar with it so it may be normal.

What caught my eye about this though is that for this file that you're having a problem with—subr--trampoline-782d7365727665722d6d61782d726571756573742d73697a65_x_server_max_request_size_0.eln—I see an entry where its name is preceded by ._ (and this is the only file that does this). Such files have caused us problems with activation before; see #60749. The question is why this port seems to have a ._ file and how we can get rid of it.

comment:10 Changed 6 weeks ago by jjstickel (Jonathan Stickel)

Cc: jjstickel added

comment:11 Changed 6 weeks ago by jjstickel (Jonathan Stickel)

Same for emacs (which makes sense, give emacs-app is a subport of emacs):

--->  Activating emacs @29.4_1+nativecomp+treesitter+x11
Error: Failed to activate emacs: Image error: Source file /opt/local/var/macports/software/emacs/emacs-29.4_1+nativecomp+treesitter+x11.darwin_24.arm64/opt/local/lib/emacs/29.4/native-lisp/29.4-e48838b5/subr--trampoline-782d7365727665722d6d61782d726571756573742d73697a65_x_server_max_request_size_0.eln does not appear to exist.  Unable to activate port emacs.
    while executing
"throw registry::image-error "Image error: Source file $srcfile does not appear to exist.  Unable to activate port ${portname}.""
    ("foreach" body line 10)
    invoked from within
"foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_total_steps
                se..."
    invoked from within
"registry::write {
            foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_..."

FWIW, disabling the nativecomp variant (-nativecomp) allows emacs and emacs-app to build, install, and activate cleanly on Sequoia.

comment:12 Changed 5 weeks ago by l2dy (Zero King)

Cc: l2dy added

comment:13 Changed 3 weeks ago by kanreki

Cc: kanreki added

comment:14 Changed 3 weeks ago by jdw13

similar issue with "port install emacs +x11"

I am able to install "port install emacs" and it builds/runs nicely. However, "port install emacs +x11" fails in a similar fashion. Environmental:

MacBook Air M1, 2020, running
macOS Sequoia 15.1
Xcode 16.1 (with corresponding CLI for Xcode 16.1)
port version 2.10.3.

I have the main.log file if you need to see it.

--->  Computing dependencies for emacs
--->  Activating emacs @29.4_1+nativecomp+treesitter+x11
Error: Failed to activate emacs: Image error: Source file /opt/local/var/macports/software/emacs/emacs-29.4_1+nativecomp+treesitter+x11.darwin_24.arm64/opt/local/lib/emacs/29.4/native-lisp/29.4-7e261f80/subr--trampoline-782d7365727665722d6d61782d726571756573742d73697a65_x_server_max_request_size_0.eln does not appear to exist.  Unable to activate port emacs.
    while executing
"throw registry::image-error "Image error: Source file $srcfile does not appear to exist.  Unable to activate port ${portname}.""
    ("foreach" body line 10)
    invoked from within
"foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_total_steps
                se..."
    invoked from within
"registry::write {
            foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_..."
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_editors_emacs/emacs/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.
Error: Processing of port emacs failed

comment:15 in reply to:  14 Changed 3 weeks ago by jjstickel (Jonathan Stickel)

Replying to jdw13:

similar issue with "port install emacs +x11"

I am able to install "port install emacs" and it builds/runs nicely. However, "port install emacs +x11" fails in a similar fashion.

Have you tried installing without the default nativcomp variant? Like so: port install emacs +x11 -nativcomp.

comment:16 Changed 3 weeks ago by jdw13

Yes, thanks. That works for me, and emacs starts in a new x-window just as it should.

Thanks a bunch, I have never used the "-nativecomp" before but perhaps I should.'

I still get the cosmetic(?) assertion message when emacs is invoked, as has been happening for many years ever since I started using "+x11" I don't know what tree-sitter is but could it be that I need to install that to get rid of the error message?

$ emacs

(process:4854): GLib-GIO-CRITICAL **: 19:07:35.363: g_settings_schema_source_lookup: assertion 'source != NULL' failed
magosin-M1-Air: (macports) /Users/jw/macports
$

$ sudo port clean emacs
--->  Cleaning emacs
magosin-M1-Air: (macports) /Users/jw/macports
$ sudo port install emacs +x11 -nativecomp 
--->  Computing dependencies for emacs
--->  Fetching archive for emacs
--->  Attempting to fetch emacs-29.4_1+treesitter+x11.darwin_24.arm64.tbz2 from https://packages.macports.org/emacs
--->  Attempting to fetch emacs-29.4_1+treesitter+x11.darwin_24.arm64.tbz2 from http://bos.us.packages.macports.org/emacs
--->  Attempting to fetch emacs-29.4_1+treesitter+x11.darwin_24.arm64.tbz2 from https://mirrors.mit.edu/macports/packages/emacs
--->  Fetching distfiles for emacs
--->  Verifying checksums for emacs
--->  Extracting emacs
--->  Applying patches to emacs
--->  Configuring emacs
Warning: Configuration logfiles contain indications of -Wimplicit-function-declaration; check that features were not accidentally disabled:
  MIN: found in emacs-29.4/config.log
  __fpending: found in emacs-29.4/config.log
  re_set_syntax: found in emacs-29.4/config.log
  re_compile_pattern: found in emacs-29.4/config.log
  re_search: found in emacs-29.4/config.log
  alignof: found in emacs-29.4/config.log
Warning: Configuration logfiles contain indications of -Wimplicit-int; check that features were not accidentally disabled:
  found in emacs-29.4/config.log
--->  Building emacs
--->  Staging emacs into destroot                                    
      [   ⢠  ⢠  ⢠  ⢠  ⢠  ⢠  ⢠  ⢠  ⢠  ⢠  ⢠  â¢]
.....snip....
  __fpending: found in emacs-29.4/config.log
  re_set_syntax: found in emacs-29.4/config.log
  re_compile_pattern: found in emacs-29.4/config.log
  re_search: found in emacs-29.4/config.log
  alignof: found in emacs-29.4/config.log
Warning: Configuration logfiles contain indications of -Wimplicit-int; check that features were not accidentally disabled:
  found in emacs-29.4/config.log
--->  Building emacs
--->  Staging emacs into destroot                                    
--->  Installing emacs @29.4_1+treesitter+x11                        
--->  Activating emacs @29.4_1+treesitter+x11
--->  Cleaning emacs                                     
--->  Scanning binaries for linking errors
--->  No broken files found.                             
--->  No broken ports found.
--->  Some of the ports you installed have notes:
  emacs has the following notes:
    To install tree-sitter grammar libraries not required by built-in *-ts-modes, please use M-x treesit-install-language-grammar.
    For details, please refer to etc/NEWS or the Emacs Lisp reference manual.
Note: See TracTickets for help on using tickets.