I am trying to install Homebrew onto my M1 Mac. My default shell is zsh and I want to keep it that way. I ran:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
and it said the installation was successful however after trying the command brew doctor
and brew help
both returned the error zsh: command not found: brew
I don't know a whole lot about shells or programming so anything I can try would be helpful.
I then was about to try un/re installing it and ran:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
but a warning came up to migrate to this command:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
this leads me to believe maybe it is just located in the wrong shell?
2
cd /opt/homebrew/bin/
PATH=$PATH:/opt/homebrew/bin
echo export PATH=$PATH:/opt/homebrew/bin >> ~/.zshrc
Run the commands in that order in terminal, you'll be editing the path and creating the missing .zshrc file, exporting the path to this new file.
Now you should be able to use:
brew doctor
It should say: "Your system is ready to brew."
answered Apr 11, 2021 at 9:08
HardcodepunkHardcodepunk
6,8924 gold badges19 silver badges26 bronze badges
19
This has helped me:
Add Homebrew to your PATH in ~/.zprofile:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)"
1
The bash deprecation warning from macOS can safely be ignored, or you can add export BASH_SILENCE_DEPRECATION_WARNING=1
to ~/.bashrc` to permanently silence it.
The initial brew setup script you're using was deprecated, you'll want to use /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
. I've skimmed that script and I think it's actually zsh compatible too, but not 100% sure. This will set it up to be accessible by any shells, as long as you have /usr/local/bin
in your PATH
. (export PATH="/usr/local/bin:$PATH"
in your ~/.zshrc
, or path+=/usr/local/bin
to use the zsh-specific syntax).
If you run which zsh
you should still see some output; if your default shell did get changed some, you can change it back using chsh -s /bin/zsh
.
EDIT:
I missed that you said you have an M1 Mac. According to the install script, the brew prefix is /opt/homebrew
on ARM-based Macs (apparently this is to work around needing sudo
for operations in /usr/local
). I don't have a new Mac to test with, but adding path+=/opt/homebrew/bin
to a new file at ~/.zshrc
should to the trick.
3
i get the seam problem. so i install it again. i copy this command to the terminal.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
when i get the tips
Next steps:
- Run these three commands in your terminal to add Homebrew to your PATH:
echo '# Set PATH, MANPATH, etc., for Homebrew.' >> /Users/ven/.zprofile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/ven/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
- Run brew help to get started
- Further documentation:
https://docs.brew.sh
than i copy three commands into the termainal one by one
echo '# Set PATH, MANPATH, etc., for Homebrew.' >> /Users/ven/.zprofile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/ven/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
typeing 'brew' in the terminal, than it's working.
1
I encountered the same issue and solved it with these steps:
- From the terminal, command
sudo vi ~/.zshrc
- Enter insert mode (type I on your keyboard) then paste
export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"
- Type
:wq!
to write and quit vim. - Close the terminal.
- Reopen the terminal and type
brew
to confirm it's working.
If the issue persists:
By default, Homebrew installs some packages in these directories: /usr/local/bin/brew , /usr/local/share/doc/homebrew.
It's worth checking if HomeBrew is inside these. To open finder on a Mac, command + shift + G. If you're unable to locate it, you may need to reinstall it.
I'm using a Macbook, macOS Big Sur - version 11.6.4
1
In my case (macOS M1) homebrew
worked very inconsistently - the not found error appeared every time I ran a brew command in a fresh terminal session. Turns out that the opt/homebrew/...
values in .zshrc
were getting overwritten by other PATH
values at some point. Ordering is crucial here.
So to add to @6754534367 's answer, you want to make sure your PATH
reflects homebrew
having priority over other PATH
values (placed before most other values). See also: https://stackoverflow.com/a/35677348/11705094.
PS: handy to include the sbin
PATH
too.
In the end my .zshrc
file looked as follows (e.g.):
export PATH=/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/joris.van.der.burgh/Library/Application_Support/JetBrains/Toolbox/scriptseval
After doing so, my homebrew worked consistently and no more doctors were needed.
For me this happened after a force quit of terminal on a M4 Macbook.
Changing the terminal setting again from Default to Command (complete path) and restarting terminal fixed all the issues:
answered Nov 20, 2024 at 12:54
Florin DobreFlorin Dobre
10.3k3 gold badges65 silver badges98 bronze badges
In Ubuntu 22.04 the following worked for me
I followed this article
After installing homebrew, I had to do add homebrew to my path like this
(echo; echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"') >> /path/to/.bashrc
Note: Edit the path to your .baschrc
or /zshrc
file accordingly. Then do this
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
Explore related questions
See similar questions with these tags.