AWS SAM CLI 全新安装引发错误 - dyld:未加载库:@executable_path/../.Python

AWS SAM CLI Fresh install throws error - dyld: Library not loaded: @executable_path/../.Python

我正在尝试使用通过 Homebrew 安装的 AWS SAM CLI,当我尝试将 sam 与任何命令一起使用时,我看到以下错误:

dyld: Library not loaded: @executable_path/../.Python
  Referenced from: /usr/local/Cellar/aws-sam-cli/0.53.0/libexec/bin/python3.7
  Reason: image not found

查看错误中引用的 .Python 文件,它被符号链接到实际上并不存在的 python 文件夹:

drwxr-xr-x   7 RCR  staff   224 Jun 16 19:40 .
drwxr-xr-x   9 RCR  staff   288 Jul  8 14:55 ..
lrwxr-xr-x   1 RCR  staff    70 Jun 16 19:40 .Python -> ../../../../opt/python/Frameworks/Python.framework/Versions/3.7/Python
drwxr-xr-x  39 RCR  staff  1248 Jul  8 14:55 bin
drwxr-xr-x   3 RCR  staff    96 Jun 16 19:40 include
drwxr-xr-x   3 RCR  staff    96 Jun 16 19:40 lib
-rw-r--r--   1 RCR  staff    61 Jun 16 19:40 pip-selfcheck.json

我在该位置没有 3.7 文件夹,但我有一个 3.8 文件夹。也就是说,我不确定这个文件夹的来源是什么。我的 Python3 安装来自 Homebrew,像往常一样位于 Cellar 中 (../Cellar/python@3.8/3.8.3_1/bin/python3),并链接到 /usr/local/bin/python3。不确定这是否相关,但我认为更多信息不会造成伤害。

我尝试将 .Python 文件符号链接到我在那个位置拥有的 3.8 版本,但它只产生了其他错误。

知道如何让这个 CLI 工作吗?

我有同样的问题(但不是全新安装)。我今天更新了 brew,sam 停止工作了。

在有人发布修复之前,这里有一个对我有用的解决方法:

pip3 install aws-sam-cli

我遇到了同样的问题,最终放弃了 aws-sam-cli 的自制程序。

% brew uninstall aws-sam-cli
% pip3 install aws-sam-cli --user

我还必须将 /Users/**MY_USER_NAME**/Library/Python/3.7/bin 添加到我的 $PATH

% vi ~/.zshrc

# Add
export PATH="/Users/**MY_USER_NAME**/Library/Python/3.7/bin:$PATH"

% source ~/.zshrc

看起来 0.53.0 带有 python3.7 可执行文件,在修复之前有一个解决方法:

brew install --build-from-source aws-sam-cli

https://github.com/awslabs/aws-sam-cli/issues/2101

https://github.com/aws/homebrew-tap/issues/93

运行以下命令升级SAM CLI

brew upgrade aws/tap/aws-sam-cli