I recently needed to install a program on my Mac using Homebrew. I was instructed to run ‘brew update’, and then the ‘brew doctor’ command which resulted in this message:
Warning: /usr/bin occurs before /usr/local/bin This means that system-provided programs will be used instead of those provided by Homebrew. The following tools exist at both paths: gcov-4.2 git git-cvsserver git-receive-pack git-shell git-upload-archive git-upload-pack Consider amending your PATH so that /usr/local/bin occurs before /usr/bin in your PATH.
I am using Zsh instead of Bash, and checked my .bashrc, .bash_profile, .zshenv, and .zshrc files. None of those expressed the path with the /usr/bin path expressed before the /usr/local/bin.
I also noticed that when using ‘echo $PATH’ the paths were being duplicated. I saw that in my .zshrc I was setting the path in the correct order, but something else was setting the paths in the incorrect order…and taking precendence.
It turns out that there is a file - /etc/paths - which controls the default paths for all users on the system. I used ‘sudo nano /etc/paths’ to edit my configuration to reflect the following:
/usr/local/bin /usr/bin /bin /usr/sbin /sbin
I opened a new terminal and ran ‘brew doctor’ again.
$ brew doctor Your system is ready to brew.