homebrew-emacs-plus: Could not install emacs-plus@28 because tar can't find xz

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

  • run brew update and try to reproduce the issue again
  • run brew doctor, fix all issues and try to reproduce your issue again
  • except, there are dozens of things being complained about, and none of them seem relevant to me
  • run brew config and brew doctor and include their output

What you were trying to do

brew install emacs-plus@28 --with-native-comp --with-modern-doom3-icon

What happened (include command output)

$ brew install emacs-plus@28 --with-native-comp --with-modern-doom3-icon 
==> Downloading https://ftp.gnu.org/gnu/emacs/emacs-28.1.tar.xz
Already downloaded: /Users/greg/Library/Caches/Homebrew/downloads/81fae34a5dbd8042af6a70512829e9d4a11e31e7067bf4da5c5bded31f757129--emacs-28.1.tar.xz
==> Installing emacs-plus@28 from d12frosted/emacs-plus
tar (child): xz: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
Error: Failure while executing; `tar --extract --no-same-owner --file /Users/greg/Library/Caches/Homebrew/downloads/81fae34a5dbd8042af6a70512829e9d4a11e31e7067bf4da5c5bded31f757129--emacs-28.1.tar.xz --directory /private/tmp/d20220726-18980-6dggq8` exited with 2. Here's the output:
tar (child): xz: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
$
Command output

$ brew install emacs-plus@28 --with-native-comp --with-modern-doom3-icon ==> Downloading https://ftp.gnu.org/gnu/emacs/emacs-28.1.tar.xz Already downloaded: /Users/greg/Library/Caches/Homebrew/downloads/81fae34a5dbd8042af6a70512829e9d4a11e31e7067bf4da5c5bded31f757129–emacs-28.1.tar.xz ==> Installing emacs-plus@28 from d12frosted/emacs-plus tar (child): xz: Cannot exec: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable: exiting now Error: Failure while executing; tar --extract --no-same-owner --file /Users/greg/Library/Caches/Homebrew/downloads/81fae34a5dbd8042af6a70512829e9d4a11e31e7067bf4da5c5bded31f757129--emacs-28.1.tar.xz --directory /private/tmp/d20220726-18980-6dggq8 exited with 2. Here’s the output: tar (child): xz: Cannot exec: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable: exiting now (mlenv) gregs-newbook:homebrew-core greg$

Output of brew config

$ brew config
HOMEBREW_VERSION: 3.5.6-47-g1af0bcd
ORIGIN: https://github.com/Homebrew/brew
HEAD: 1af0bcde2010db28c8f2e5d6433dc215b033006d
Last commit: 26 hours ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 32a174609ecf962443c662f05be52c42264a9927
Core tap last commit: 4 hours ago
Core tap branch: master
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CASK_OPTS: []
HOMEBREW_EDITOR: vi
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.8 => /usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.6.8_1/bin/ruby
CPU: octa-core 64-bit westmere
Clang: 13.1.6 build 1316
Git: 2.29.2 => /usr/local/bin/git
Curl: 7.79.1 => /usr/bin/curl
macOS: 12.5-x86_64
CLT: 13.4.0.0.1.1651278267
Xcode: N/A
Rosetta 2: true

Output of brew doctor

$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: Some installed formulae are deprecated or disabled.
You should find replacements for the following formulae:
  ilmbase

Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
  /usr/local/lib/libcord.1.dylib
  /usr/local/lib/libdvdcss.2.dylib
  /usr/local/lib/libffi.6.dylib
  /usr/local/lib/libgc.1.dylib
  /usr/local/lib/libgmp.10.dylib
  /usr/local/lib/libguile-2.2.1.dylib
  /usr/local/lib/libltdl.7.dylib
  /usr/local/lib/libnnz11.dylib
  /usr/local/lib/libociei.dylib
  /usr/local/lib/libocijdbc11.dylib
  /usr/local/lib/libunistring.2.dylib

Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected header files:
  /usr/local/include/gc.h
  /usr/local/include/gc/cord.h
  /usr/local/include/gc/cord_pos.h
  /usr/local/include/gc/ec.h
  /usr/local/include/gc/gc.h
  /usr/local/include/gc/gc_backptr.h
  /usr/local/include/gc/gc_config_macros.h
  /usr/local/include/gc/gc_gcj.h
  /usr/local/include/gc/gc_inline.h
  /usr/local/include/gc/gc_mark.h
  /usr/local/include/gc/gc_pthread_redirects.h
  /usr/local/include/gc/gc_tiny_fl.h
  /usr/local/include/gc/gc_typed.h
  /usr/local/include/gc/gc_version.h
  /usr/local/include/gc/javaxfc.h
  /usr/local/include/gc/leak_detector.h
  /usr/local/include/gmp.h
  /usr/local/include/libltdl/lt_dlloader.h
  /usr/local/include/libltdl/lt_error.h
  /usr/local/include/libltdl/lt_system.h
  /usr/local/include/ltdl.h
  /usr/local/include/unicase.h
  /usr/local/include/uniconv.h
  /usr/local/include/unictype.h
  /usr/local/include/unigbrk.h
  /usr/local/include/unilbrk.h
  /usr/local/include/uniname.h
  /usr/local/include/uninorm.h
  /usr/local/include/unistdio.h
  /usr/local/include/unistr.h
  /usr/local/include/unistring/cdefs.h
  /usr/local/include/unistring/iconveh.h
  /usr/local/include/unistring/inline.h
  /usr/local/include/unistring/localcharset.h
  /usr/local/include/unistring/stdbool.h
  /usr/local/include/unistring/stdint.h
  /usr/local/include/unistring/version.h
  /usr/local/include/unistring/woe32dll.h
  /usr/local/include/unitypes.h
  /usr/local/include/uniwbrk.h
  /usr/local/include/uniwidth.h

Warning: Unbrewed '.la' files were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected '.la' files:
  /usr/local/lib/libcord.la
  /usr/local/lib/libffi.la
  /usr/local/lib/libgc.la
  /usr/local/lib/libgmp.la
  /usr/local/lib/libguile-2.2.la
  /usr/local/lib/libltdl.la
  /usr/local/lib/libunistring.la

Warning: Unbrewed '.pc' files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected '.pc' files:
  /usr/local/lib/pkgconfig/bdw-gc.pc
  /usr/local/lib/pkgconfig/guile-2.2.pc
  /usr/local/lib/pkgconfig/libffi.pc

Warning: Unbrewed static libraries were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected static libraries:
  /usr/local/lib/libffi.a
  /usr/local/lib/libgmp.a
  /usr/local/lib/libguile-2.2.a
  /usr/local/lib/libltdl.a
  /usr/local/lib/libunistring.a

Warning: You have unlinked kegs in your Cellar.
Leaving kegs unlinked can lead to build-trouble and cause formulae that depend on
those kegs to fail to run properly once built. Run `brew link` on these:
  libtool
  gmp
  w3m
  ghostscript
  libunistring
  bdw-gc
  emacs
  libdvdcss
  gawk
  autoconf

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Reactions: 3
  • Comments: 38 (10 by maintainers)

Commits related to this issue

Most upvoted comments

I got it easily fixed by

brew install xz

successfully built!

I was having the same issue on a clean Mac, installing with brew install emacs-plus. After installing xz the install went through. However, I uninstalled Emacs and tried installing again with the options brew install emacs-plus --with-no-titlebar --with-xwidgets --with-retro-gnu-meditate-levitate-icon --with-imagemagick, then I hit the error again! And now xz is installed.

Edit: After installing xz, installing emacs, uninstalling emacs, installing emacs with options and failing, I closed my terminal and reopened. Then, tried installing again and it went through this time. Not sure what is happening, would be helpful if someone has any idea.

I can reproduce it on a clean intel mac.

You can add depends_on "xz" => :build this to /Formula/emacs-plus@29.rb and run brew install --formula ./Formula/emacs-plus@28.rb.

When I tried that, I got

$ brew install xz 
Warning: xz 5.2.5_1 is already installed and up-to-date.
To reinstall 5.2.5_1, run:
  brew reinstall xz
$ 

When I reinstalled, I still got this error:

==> Installing emacs-plus@28 from d12frosted/emacs-plus
tar (child): xz: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
Error: Failure while executing; `tar --extract --no-same-owner --file /Users/greg/Library/Caches/Homebrew/downloads/81fae34a5dbd8042af6a70512829e9d4a11e31e7067bf4da5c5bded31f757129--emacs-28.1.tar.xz --directory /private/tmp/d20220730-26659-hhpmbg` exited with 2. Here's the output:
tar (child): xz: Cannot exec: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now