Tôi đã gặp vấn đề với openssl và python @ 2 với brew, điều này đã giải thích ở đây (chưa được giải quyết) . Cách giải quyết được ghi lại để cài đặt lại Python và openssl không hoạt động, vì vậy tôi quyết định tôi sẽ gỡ cài đặt và cài đặt lại Python.
Vấn đề là, khi bạn cố gắng cài đặt Python 2 với brew, bạn sẽ nhận được thông báo này:
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/python@2.rb
If you still use this formula consider creating your own tap:
https://docs.brew.sh/How-to-Create-and-Maintain-a-Tap
Thật không may, tôi vẫn còn một số công thức sản xuất bia phụ thuộc vào trăn bia của @ @ 2. Những người bao gồm awscli
, ví dụ letsencrypt
prsshuttle
aws
zsh: /usr/local/bin/aws: bad interpreter: /usr/local/opt/python@2/bin/python2.7: no such file or directory
Tôi không biết cách sử dụng brew extract
lệnh này mà họ đã ghi lại để cài đặt lại Python @ 2. Nó cần một công thức và một vòi. Tôi tưởng tượng công thức sẽ là python@2
. Tôi không chắc chắn những gì vòi sẽ cần phải được.
Ngoài ra, cài đặt lại các vòi như aws
hoặc letsencrypt
không hoạt động tốt.
Sau khi cài đặt lại awscli
( brew reinstall awscli
), chạy các lệnh aws vẫn báo lỗi.
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