我在brews which have explained here (unresolved)上遇到openssl和python @ 2的问题。已记录的重新安装Python和openssl的解决方法不起作用,因此我决定卸载并重新安装Python。
问题是,当您尝试通过brew安装Python 2时,收到此消息:
brew install python@2
Error: No available formula with the name "python@2"
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow
python@2 was deleted from homebrew/core in commit 028f11f9e:
python@2: delete (https://github.com/Homebrew/homebrew-core/issues/49796)
EOL 1 January 2020.
We gave it 1 month more to live so that people had time to migrate.
All in all, developers had 11 years to do their migration.
You can use the `brew extract` command and maintain python@2 in your own
tap if necessary:
https://docs.brew.sh/How-to-Create-and-Maintain-a-Tap
To show the formula before removal run:
git -C "$(brew --repo homebrew/core)" show 028f11f9e^:Formula/[email protected]
If you still use this formula consider creating your own tap:
https://docs.brew.sh/How-to-Create-and-Maintain-a-Tap
[不幸的是,我仍然有许多酿造公式,取决于Brew的python @ 2。这些包括awscli
,letsencrypt
,pr sshuttle
例如
aws
zsh: /usr/local/bin/aws: bad interpreter: /usr/local/opt/python@2/bin/python2.7: no such file or directory
我不知道他们如何使用此brew extract
命令来重新安装Python @ 2。它需要一个公式和一个水龙头。我想公式是python@2
。我不确定水龙头将是什么。
另外重新安装诸如aws
或letsencrypt
的水龙头也不能很好地工作。
[重新安装awscli
(brew reinstall awscli
)后,运行aws命令仍然会出错。
aws
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:32: SyntaxWarning: "is" with a literal. Did you mean "=="?
if x is 0 or x is 1:
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:32: SyntaxWarning: "is" with a literal. Did you mean "=="?
if x is 0 or x is 1:
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:34: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif y is 0 or y is 1:
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:34: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif y is 0 or y is 1:
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:260: SyntaxWarning: "is" with a literal. Did you mean "=="?
if original_result is 0:
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:
aws help
aws <command> help
aws <command> <subcommand> help
aws: error: the following arguments are required: command
看来,自制软件的工作人员确实使得尽可能地在macOS上使用Python 2.7变得更加困难。
brew extract
链接确实没有帮助,您需要在此处查找有关如何从提取的资源中进行自己点击的答案。brew extract
命令doesn't even work correctly,因为软件包名称中的@。尽管该解决方案非常简单,您只需要从最新的已知提交进行安装:
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/86a44a0a552c673a05f11018459c9f5faae3becc/Formula/[email protected]
[关于这是“不稳定”的警告,我不理解,因为在Git历史记录中的提交是尽可能稳定的。