[R-SIG-Mac] Mac M1 emacs

Simon Urbanek @|mon@urb@nek @end|ng |rom R-project@org
Sun Mar 7 21:37:15 CET 2021


FWIW I have a command-line-only version of emacs in the libs-arm64 directory:

https://mac.r-project.org/libs-arm64/emacs-27.1-darwin.20-arm64.tar.gz

It is intentionally compiled without GUI so a replacement for the emacs as was shipped by Apple in older versions of macOS (see 
https://github.com/R-macos/recipes/tree/master/recipes
for the recipe if you want to tweak it to add GUI support or similar).

Cheers,
Simon




> On Mar 8, 2021, at 8:37 AM, Bob Rudis <bob using rud.is> wrote:
> 
> you should likely re-post to the list or double check the download as
> there are no x86_64 + amd64 universal binaries in there:
> 
>    $ find  /Volumes/Emacs/Emacs.app/Contents/MacOS -type f -exec file {} \;
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/bin-x86_64-10_10/ctags:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/bin-x86_64-10_10/ebrowse:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/bin-x86_64-10_10/emacsclient:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/bin-x86_64-10_10/etags:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/bin-x86_64-10_14/ctags:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/bin-x86_64-10_14/ebrowse:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/bin-x86_64-10_14/emacsclient:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/bin-x86_64-10_14/etags:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/Emacs: Ruby script text,
> UTF-8 Unicode text
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/Emacs-x86_64-10_10: Mach-O
> 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/Emacs-x86_64-10_10.pdmp: data
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/Emacs-x86_64-10_14: Mach-O
> 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/Emacs-x86_64-10_14.pdmp: data
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/Emacs.pdmp: data
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libffi.6.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libgmp.10.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libgnutls.30.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libhogweed.4.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libjansson.4.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libnettle.6.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libp11-kit.0.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libtasn1.6.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/lib-x86_64-10_10/libunistring.2.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libffi.6.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libgmp.10.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libgnutls.30.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libhogweed.4.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libjansson.4.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libnettle.6.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libp11-kit.0.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libtasn1.6.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_10/libunistring.2.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libffi.7.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libgmp.10.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libgnutls.30.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libhogweed.6.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libidn2.0.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libintl.8.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libjansson.4.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libnettle.8.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libp11-kit.0.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libtasn1.6.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/lib-x86_64-10_14/libunistring.2.dylib:
> Mach-O 64-bit dynamically linked shared library x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/libexec-x86_64-10_10/hexl:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/libexec-x86_64-10_10/movemail:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/libexec-x86_64-10_10/rcs2log:
> POSIX shell script executable (binary data)
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/libexec-x86_64-10_14/hexl:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/libexec-x86_64-10_14/movemail:
> Mach-O 64-bit executable x86_64
>    /Volumes/Emacs/Emacs.app/Contents/MacOS/libexec-x86_64-10_14/rcs2log:
> POSIX shell script executable (binary data)
> 
> On Sun, Mar 7, 2021 at 1:50 PM Richard M. Heiberger <rmh using temple.edu> wrote:
>> 
>> I originally asked this question on the ess-help list, I now think it belongs here.
>> 
>> emacs 21.1, specifically Vincent Goulet's distribution, crashes regularly on my Mac M1.
>> It looks to me like it is using the intel compilation through rosetta instead of the arm
>> compilation.
>> Vincent's distribution is based on
>> https://emacsformacosx.com/emacs-builds/Emacs-27.1-1-universal.dmg
>> which contains
>> lrwxr-xr-x   1 rmh  staff        16 Aug 12  2020 bin -> bin-x86_64-10_10
>>  drwxr-xr-x   6 rmh  staff       204 Aug 12  2020 bin-x86_64-10_10
>>  drwxr-xr-x   6 rmh  staff       204 Aug 12  2020 bin-x86_64-10_14
>> 
>> The crash report says
>> My March 1 crash report said
>>> Process:               Emacs-x86_64-10_14 [1112]
>>> Path:                  /Applications/Emacs.app/Contents/MacOS/Emacs-x86_64-10_14
>>> Identifier:            org.gnu.Emacs
>>> Version:               Version 27.1 (9.0)
>>> Code Type:             X86-64 (Translated)
>>> Parent Process:        ??? [1]
>>> Responsible:           Emacs-x86_64-10_14 [1112]
>> 
>> which I interpret as saying that it ran the intel compilation
>>> Responsible:           Emacs-x86_64-10_14 [1112]
>> translated through
>> rosetta.  It seems not to have run the arm compilation, even though the link
>> rwxr-xr-x   1 rmh  staff        16 Aug 12  2020 bin -> bin-x86_64-10_10
>> looks to me like it should have been running bin-x86_64-10_10
>> 
>> Is my interpretation correct? and if so how do I get the program to run the native M1
>> compilation.
>> _______________________________________________
>> R-SIG-Mac mailing list
>> R-SIG-Mac using r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-sig-mac
> 
> _______________________________________________
> R-SIG-Mac mailing list
> R-SIG-Mac using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-mac



More information about the R-SIG-Mac mailing list