쿠팡파트너스 활동으로 수수료를 제공받을 수 있습니다.
brew doctor 명령어 수행시 두가지 경고 메시지가 출력됨
brew doctor
Shell
복사
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:
openssl@1.1
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:
openssl@3
Shell
복사
1.
사용되지 않거나 비활성화된 포뮬러:
•
"일부 설치된 포뮬러가 사용되지 않거나 비활성화됨" 경고는 현재 Homebrew 버전에서 더 이상 관리되거나 지원되지 않는 패키지(포뮬러)가 시스템에 설치되어 있음을 나타냅니다. 구체적으로 openssl@1.1이 언급되었습니다.
•
조치사항: openssl@1.1의 대체품을 찾아야 합니다. 이는 openssl@3 같은 최신 버전의 OpenSSL로 업그레이드하는 것을 의미할 수 있습니다. 나중에 언급된 것처럼 이미 openssl@3를 설치했지만 링크되지 않았을 가능성이 큽니다.
2.
링크되지 않은 케그:
•
"셀러에 링크되지 않은 케그가 있음" 경고는 설치되었지만 Homebrew의 접두사(/usr/local은 macOS에서 기본값)에 링크되지 않은 패키지를 나타냅니다. 시스템이 필요할 때 이 패키지를 찾을 수 있도록 링크하는 단계가 필요합니다. 구체적으로 openssl@3이 설치되었지만 링크되지 않았다고 언급되었습니다.
•
조치사항: openssl@3를 링크하여 접근 가능하게 해야 합니다.
ChatGPT가 제안하는 해결 방법
1.
openssl@3 을 brew에 링크시킨다.
brew link openssl@3
Shell
복사
2.
deprecated된 openssl@1.1을 제거(openssl@1.1에 의존하는 응용프로그램이 있는지 먼저 확인하고 제거)
brew uninstall openssl@1.1
Shell
복사
openssl@1.1 의존성 검사
brew uses --installed openssl@1.1
Bash
복사
python@3.10
Bash
복사
openssl@1.1에 의존하는 응용프로그램 검색결과 python@3.10이 발견되었다.
python 패키지 정보 확인
brew info python@3.10
Bash
복사
python@3.10: stable 3.10.14 (bottled)
Interpreted, interactive, object-oriented programming language
https://www.python.org/
Installed
/opt/homebrew/Cellar/python@3.10/3.10.11 (3,099 files, 57.2MB) *
Poured from bottle using the formulae.brew.sh API on 2023-05-24 at 06:36:59
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/p/python@3.10.rb
License: Python-2.0
==> Dependencies
Build: pkg-config ✔
Required: gdbm ✔, mpdecimal ✘, openssl@3 ✘, readline ✘, sqlite ✘, xz ✘
==> Caveats
Python has been installed as
/opt/homebrew/bin/python3.10
Unversioned and major-versioned symlinks `python`, `python3`, `python-config`, `python3-config`, `pip`, `pip3`, etc. pointing to
`python3.10`, `python3.10-config`, `pip3.10` etc., respectively, have been installed into
/opt/homebrew/opt/python@3.10/libexec/bin
You can install Python packages with
pip3.10 install <package>
They will install into the site-package directory
/opt/homebrew/lib/python3.10/site-packages
tkinter is no longer included with this formula, but it is available separately:
brew install python-tk@3.10
If you do not need a specific version of Python, and always want Homebrew's `python3` in your PATH:
brew install python3
See: https://docs.brew.sh/Homebrew-and-Python
==> Analytics
install: 93,691 (30 days), 253,186 (90 days), 1,245,405 (365 days)
install-on-request: 77,492 (30 days), 212,876 (90 days), 1,000,937 (365 days)
build-error: 20 (30 days)
Bash
복사
==> Dependencies
Build: pkg-config
Required: gdbm
, mpdecimal ✘, openssl@3 ✘, readline ✘, sqlite ✘, xz ✘
현재 brew의 버전에서, python@3.10은 위의 Build와 Required에 나열된 것들과 dependent함. gdbm과는 연결되어있지만, 나머지와는 그렇지 않은 상태임을 보임.
아래 Github을 확인해보면, python@3.10 switch to openssl@3을 보아 python@3.10은 openssl@3과 링크되어야 하는 것을 확인할 수 있다.
홈브루와 캐스크, 포뮬러를 최신버전으로 업데이트 하면, 자동으로 마이그레이션이 진행됨
brew update && brew upgrade
Shell
복사
update && upgrade
ChatGPT의 제안대로 OpenSSL을 임의로 지우는 방식보다는, 안전한 방법으로 홈브루 업데이트 & 업그레이드로 마이그레이션을 진행함
brew update: 홈브루 자체를 최신 버전으로 만듦
•
홈브루 공식 저장소(Homebrew Github)에서 홈브루 자체와 지원하는 포뮬라(formula) 목록을 최신 버전으로 갱신
•
필요한 경우 마이그레이션도 함
brew upgrade: 홈브루를 통해 설치한 것들(캐스크, 포뮬라)을 최신 버전으로 만듦
•
설치된 캐스크(cask) 중 최신이 아닌 모든 것들을 최신 버전으로 업그레이드
•
설치됐거나 핀을 찍지 않는 포뮬라 중 최신이 아닌 모든 것들을 최신 버전으로 업그레이드
•
brew upgrade xxx 이라고 하면 명시된 xxx만 업그레이드한다.
캐스크(cask): 홈브루로 설치할 수 있는 GUI 앱
포뮬라(formula): 홈브루로 설치할 수 있는 패키지(CLI로 작동하는 앱)
마이그레이션 후
•
brew doctor 명령어 입력: openssl@1.1의 deprecated 관련 메시지를 확인할 수 있다.
Warning: Some installed formulae are deprecated or disabled.
You should find replacements for the following formulae:
openssl@1.1
Shell
복사
•
openssl@1.1 의존성 검사: openssl@1.1과 연결된 패키지가 발견되지 않았음
•
python 패키지 정보 확인: Dependencies에 모두
표시
==> python@3.10: stable 3.10.14 (bottled)
Interpreted, interactive, object-oriented programming language
https://www.python.org/
Installed
/opt/homebrew/Cellar/python@3.10/3.10.14 (3,098 files, 56.8MB) *
Poured from bottle using the formulae.brew.sh API on 2024-04-16 at 15:25:57
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/p/python@3.10.rb
License: Python-2.0
==> Dependencies
Build: pkg-config ✔
Required: gdbm ✔, mpdecimal ✔, openssl@3 ✔, readline ✔, sqlite ✔, xz ✔
==> Caveats
Python has been installed as
/opt/homebrew/bin/python3.10
Unversioned and major-versioned symlinks `python`, `python3`, `python-config`, `python3-config`, `pip`, `pip3`, etc. pointing to
`python3.10`, `python3.10-config`, `pip3.10` etc., respectively, have been installed into
/opt/homebrew/opt/python@3.10/libexec/bin
You can install Python packages with
pip3.10 install <package>
They will install into the site-package directory
/opt/homebrew/lib/python3.10/site-packages
tkinter is no longer included with this formula, but it is available separately:
brew install python-tk@3.10
If you do not need a specific version of Python, and always want Homebrew's `python3` in your PATH:
brew install python3
See: https://docs.brew.sh/Homebrew-and-Python
==> Analytics
install: 93,731 (30 days), 253,210 (90 days), 1,245,261 (365 days)
install-on-request: 77,527 (30 days), 212,888 (90 days), 1,000,838 (365 days)
build-error: 20 (30 days)
Bash
복사