112

我试图检查我的 MAC OS X 上的 AWS-CLI 版本。以下错误回击:

dyld: Library not loaded: @executable_path/../.Python
  Referenced from: /usr/local/aws/bin/python
  Reason: image not found
Abort trap: 6

任何有关如何解决此问题的相关意见将不胜感激。

4

9 回答 9

95

这是 awscli 的一个错误,可能会在下一个版本中修复。这就是为什么,最佳实践是升级:

brew upgrade awscli
于 2018-07-02T12:42:21.880 回答
35

你一定搞砸了啤酒。尝试使用重新安装它:(如果需要brew install awscli,后跟brew link awscli)。

于 2018-02-10T14:55:06.887 回答
18

发生此错误是因为您的虚拟环境已损坏符号链接。这是取自tevino 的fix_virtualenv要点的一个很好的解决方案:

#!/usr/bin/env bash

ENV_PATH="$(dirname "$(dirname "$(which pip)")")"
SYSTEM_VIRTUALENV="$(which -a virtualenv|tail -1)"

BAD_ENV_PATHS="/usr/local"

echo "Ensure the root of the broken virtualenv:"
echo "    $ENV_PATH"

if [[ -z "$ENV_PATH" ]] || [[ "$ENV_PATH" = *"$BAD_ENV_PATHS"* ]]; then
    echo "The root path above doesn't seems to be a valid one."
    echo "Please make sure you ACTIVATED the broken virtualenv."
    echo "‼️  Exiting for your safety... (thanks @laymonk for reporting this)"
    exit 1
fi

read -p "‼️  Press Enter if you are not sure (y/N) " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
    echo "♻️  Removing old symbolic links......"
    find "$ENV_PATH" -type l -delete -print
    echo "  Creating new symbolic links......"
    $SYSTEM_VIRTUALENV "$ENV_PATH"
    echo "  Done!"
fi

此外,这里有一个类似的问题: Broken references in Virtualenvs

于 2017-12-05T12:17:50.583 回答
18

阅读主题后,它对我有用:

  1. 卸载 aws
$ sudo rm -rf /usr/local/aws
$ sudo rm /usr/local/bin/aws
  1. 重新安装一遍
    $ brew reinstall awscli
于 2019-12-06T06:22:02.610 回答
2

我通过 curl 安装了它,常规方式

$ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"

然后它停止工作抱怨找不到python2.7

dyld: Library not loaded: @executable_path/../.Python
  Referenced from: /usr/local/aws/bin/python2.7
  Reason: image not found
Abort trap: 6

所以我按照以下步骤修复了它(如果您通过安装它,请确保不要这样做brew):

$ sudo rm -rf /usr/local/aws
$ sudo rm /usr/local/bin/aws

然后我使用brew安装它:

$ brew upgrade
$ brew install awscli
于 2019-09-26T21:36:23.633 回答
2

如果您已经有 python(python --version有效。如果没有使用brew install python安装它)。这个对我有用:

  1. 卸载 aws

    $ sudo rm -rf /usr/local/aws
    $ sudo rm /usr/local/bin/aws
    
  2. 重新安装

    $ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
    $ unzip awscli-bundle.zip
    $ sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
    
于 2019-07-15T13:44:22.220 回答
2

在 mac 上使用 homebrew 安装 awscli 时我遇到了类似的问题。所以最后的方法是“brew卸载python3”并再次重新安装awscli。

于 2018-01-04T06:17:33.393 回答
2

您的 virtualenv 中出现问题可能会触发此错误。例如,我有一个现有的工作 virtualenv 并运行brew install awscli,它破坏了我的 virtualenv 这个错误。如果是这种情况,删除并重新创建您的 virtualenv(与您最初创建它的方式相同)应该可以解决问题。它对我有用。

于 2019-10-01T20:20:04.033 回答
0

这对我有用。

brew upgrade
brew uninstall aws-sam-cli
brew install aws-sam-cli
于 2021-05-17T19:06:53.610 回答