Как разрешить dyld: Библиотека не загружена: ошибка @executable_path ..

Я пытался проверить версию AWS-CLI на своей MAC OS X. И следующая ошибка ответила:

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

Мы будем очень признательны за любые соответствующие комментарии о том, как это исправить.


person Manogna Mujje    schedule 04.12.2017    source источник
comment
Эта ошибка может возникнуть, если вы brew install some_package находитесь внутри virtualenv. Я думаю, что происходит то, что brew выполняет свою работу внутри виртуальной машины. Чтобы исправить это, деактивируйте свой виртуальный rm -rf каталог виртуальной среды в виртуальном окружении. Затем восстановите его с нуля. Затем сделайте громкий комментарий, в котором говорится, что не варите установку в виртуальной среде.   -  person Eric Leschinski    schedule 25.09.2019
comment
Если вы не хотите перестраивать его с нуля, следуйте этому ссылка У меня сработало   -  person PAC    schedule 21.01.2020


Ответы (9)


Это ошибка awscli, которая может быть исправлена ​​в следующих версиях. Вот почему рекомендуется обновить:

brew upgrade awscli
person Abdennour TOUMI    schedule 02.07.2018
comment
если у вас неработающая символическая ссылка, это не сработает. он сообщит вам, что awscli не установлен, и вам придется запускать brew link --overwrite awscli, и это сработало для меня. Я проголосовал за, потому что это было началом правильного пути. - person str8up7od; 12.04.2019
comment
Если вы будете следовать инструкциям на странице интерфейса командной строки AWS, это не сработает docs.aws.amazon.com/cli/latest/userguide/install-macos.html - person jcollum; 06.01.2020
comment
Аналогичное примечание для тех, кто сталкивается с аналогичной проблемой с eb, вы можете запустить brew upgrade aws-elasticbeanstalk. - person Sean Chon; 26.03.2020
comment
У меня нет aswcli например - person Atombit; 13.07.2020
comment
я получаю эту ошибку и не подключен к aws-cli. Я запускаю несколько virtualenv на своем ноутбуке, а мой python3 недавно был обновлен с 3.7 до 3.9 - person Rohit Chatterjee; 05.12.2020

Вы, должно быть, испортили варево. Попробуйте переустановить его, используя: brew install awscli (затем brew link awscli, если необходимо).

person Nabin    schedule 10.02.2018
comment
Этого не произошло, также из-за этой ошибки: Error: awscli 1.14.60 is already installed - person axel; 30.01.2019

Эта ошибка возникает из-за того, что в вашей виртуальной среде нарушены символические ссылки. Вот хорошее решение, взятое из fix_virtualenv gist tevino:

#!/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

Кроме того, вот аналогичный вопрос: Неработающие ссылки в Virtualenvs.

person Andrii Rieznik    schedule 05.12.2017
comment
Удивительно, это сразу устранило мою проблему - person Our_Benefactors; 26.09.2019
comment
Как это запустить? - person Yokhen; 20.02.2020
comment
Краткое изложение решения: 1) Удалите все символические ссылки внутри виртуальной среды, запустив find your-virtual-env-directory -type l -delete 2) Воссоздайте символические ссылки внутри виртуальной среды, запустив virtualenv your-virtual-env-directory - person alejandro; 29.02.2020
comment
Я получаю сообщение об ошибке OSError: Command /Users/defaultuser/D...o/venv/bin/python3.7 - setuptools pip wheel failed with error code -6 при запуске команды $SYSTEM_VIRTUALENV "$ENV_PATH". Не знаю, что такое код ошибки -6 - person jerrymouse; 30.06.2020
comment
Не используйте это! Он удалил все мои важные символические ссылки в домашнем каталоге. и не создавал новых. Вместо этого он выдал строку с ошибкой 24:.: Имя файла требуется аргумент - person Atombit; 13.07.2020

После прочтения темы у меня работает:

  1. Удалить aws
$ sudo rm -rf /usr/local/aws
$ sudo rm /usr/local/bin/aws
  1. Переустановите его снова
    $ brew reinstall awscli
person Gleb Belyaev    schedule 06.12.2019
comment
Та же проблема, все, что я сделал, было brew reinstall awscli, и она была исправлена. Спасибо - person Jordon Biondo; 30.07.2020

У меня была аналогичная проблема при установке awscli с помощью homebrew на Mac. Итак, последний подход был «brew uninstall python3» и снова переустановить awscli.

person Zaur    schedule 04.01.2018

Если у вас уже есть 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
    
person Alona Honcharova    schedule 15.07.2019

Установил через 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
person Hamdi Al-Haj    schedule 26.09.2019

Эта ошибка может быть вызвана проблемой в вашем файле virtualenv. Например, у меня был уже работающий virtualenv, и я запустил brew install awscli, и эта ошибка сломала мой virtualenv. Если это так, удаление и воссоздание вашего virtualenv (так же, как вы его изначально создавали) должно решить проблему. Это сработало для меня.

person Will Cain    schedule 01.10.2019

Эта работа для меня.

brew upgrade
brew uninstall aws-sam-cli
brew install aws-sam-cli
person msenatori    schedule 17.05.2021