Warning: "config" scripts exist outside your system or Homebrew directories.


# 事象：`brew doctor`したら警告が出た。
- 環境 : macOS Catalina バージョン10.15.6

```bash
# 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: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and which additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew-provided
script of the same name. We found the following "config" scripts:
  /Library/Frameworks/Python.framework/Versions/3.8/bin/python3-config
  /Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8-config
```

## 原因：Homebrew管理外のconfigファイルがあると衝突するかもしれないと心配されている。
> Homebrewの管理外な*-configファイルがあると衝突おこすかも
> [【Homebrew】brew doctorのWarning対処方法 (その3) + envコマンドについて - TASK NOTES](https://www.task-notes.com/entry/20141223/1419324649)

そういえばPythonは、Homebrewを使わないでインストールした。
[MacにPython3とPyCharmをインストールする方法 - ponsuke_tarou’s blog](http://ponsuke-tarou.hatenablog.com/entry/2018/05/13/003700)

> 「PATHの中に追加の（config）スクリプトがあると、Homebrewでインストールされるソフトウェアを混乱させるかもよ。もし、そのconfigスクリプトが、システムやHomebrewで供給される同じ名前のスクリプトを上書きした場合にはね。」
> [Warning: &#8220;config&#8221; scripts exist outside your system or Homebrew directories. brew doctor 時の警告 | EasyRamble](https://easyramble.com/homebrew-config-scripts-warning.html)

```bash
# PATHを確認してみる
% echo $PATH
/Library/Frameworks/Python.framework/Versions/3.8/bin:...省略...
# 犯人はこれらしい↑
```


### 対応：`.zshrc`にHomwbrewのエイリアスを追加する。
Bashを使う人は`.bash_profile`に、Zshを使う人は`.zshrc`にHomwbrewのエイリアスを追加する。

```bash
# 1. エイリアスを追加する
% echo 'alias brew="env PATH=${PATH/\/Library\/Frameworks\/Python\.framework\/Versions/3\.8/bin:/} brew"' >> .zshrc

# 2. 反映する
% source ~/.zshrc 

# 3. 対応後
% brew doctor
Your system is ready to brew.
```

# 事象 : Visual Studio Codeのターミナルでdoctorに言われた
- 環境
    - macOS BigSurバージョン11.1
    - Visual Studio Code Version 1.52.1

```zsh
$ 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: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and which additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew-provided
script of the same name. We found the following "config" scripts:
  /Library/Frameworks/Python.framework/Versions/3.8/bin/python3-config
  /Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8-config
```

`.zshrc`にHomwbrewのエイリアスを書いてあるのになぜ？

```text:.zshrc
alias brew="env PATH=${PATH/\/Library\/Frameworks\/Python\.framework\/Versions/3\.8/bin:/} brew"
```

## 原因 : Visual Studio Codeのシェルがzshじゃなくなる
ふと気がついた・・・・brew doctorするとシェルが
zsh > bash > perl
と切り替わっている・・・ということは`.zshrc`にHomwbrewのエイリアスを書いても使われない・・・。

![タイトルなし.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/159761/32fd849f-ac98-c286-ddaf-af40fd627bf6.gif)

### 対応 : brewはVisual Studio Codeでやらない
ただ諦めただけ。ふつうにMacのターミナルを使う。