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

Posted

技术标签:

【中文标题】AWS SAM CLI 全新安装引发错误 - dyld:未加载库:@executable_path/../.Python【英文标题】:AWS SAM CLI Fresh install throws error - dyld: Library not loaded: @executable_path/../.Python 【发布时间】:2020-10-29 06:57:18 【问题描述】:

我正在尝试使用通过 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/python@3.8/3.8.3_1/bin/python3) 并符号链接到 /usr/local/bin/python3。不确定这是否相关,但我认为更多信息不会受到伤害。

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

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

【问题讨论】:

【参考方案1】:

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

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

pip3 install aws-sam-cli

【讨论】:

请问您在哪里发现可以仅使用 pip3 进行安装?谢谢【参考方案2】:

我遇到了同样的问题,最终放弃了自制软件,转而使用 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

【讨论】:

【参考方案3】:

看起来 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

【讨论】:

这对我有用brew reinstall --build-from-source aws-sam-cli 哈,这些 github 问题都是在我停止查找后才添加的,并来这里询问。反正。这似乎奏效了。我假设稍后,当有没有问题的更新时,brew upgrade 就足够了吗?【参考方案4】:

运行以下命令升级 SAM CLI

brew upgrade aws/tap/aws-sam-cli

【讨论】:

以上是关于AWS SAM CLI 全新安装引发错误 - dyld:未加载库:@executable_path/../.Python的主要内容,如果未能解决你的问题,请参考以下文章

AWS - SAM cli yaml 模板不适用于 cloudformation 堆栈

Installing the AWS SAM CLI on macOS

AWS SAM - 无法创建变更集:Waiter ChangeSetCreateComplete failed

“aws cloudformation delete-stack”不能使用 SAM CLI 使用的 StackName?

AWS Elastic Beanstalk CLI 安装错误

由于错误 AccessDeniedException(Lambda 别名作为 Cognito 触发器),AWS Cognito 用户池引发 PreSignUp 调用失败