Как устранить ошибку "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
Любые соответствующие материалы о том, как это исправить, будут высоко оценены.
12 ответов
Это ошибка в awscli, и она может быть исправлена в следующих версиях. Вот почему лучшая практика заключается в обновлении:
brew upgrade awscli
Вы, должно быть, испортили варку. Попробуйте переустановить его, используя: brew install awscli
(с последующим brew link awscli
если нужно).
После прочтения темы у меня работает:
- Удалить aws
$ sudo rm -rf /usr/local/aws
$ sudo rm /usr/local/bin/aws
- Переустановите его снова
$ brew reinstall awscli
Эта ошибка возникает из-за того, что в вашей виртуальной среде сломаны символические ссылки. Вот хорошее решение. https://gist.github.com/tevino/1a557a0c200d61d4e4fb
Также вот схожий вопрос: неработающие ссылки в Virtualenvs
Установил через 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
Если у вас уже есть python (работаетpython --version. Если нет, установите его с помощью brew install python). Меня устраивает:
Удалить aws
$ sudo rm -rf /usr/local/aws $ sudo rm /usr/local/bin/aws
Установите его снова
$ 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
Я попробовал все вышеперечисленные решения, и ничего не сработало, затем я попробовал это с https://docs.aws.amazon.com/cli/v1/userguide/install-macos.html , и это сработало:
sudo /usr/local/bin/python3.7 awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
У меня была похожая проблема при установке awscli с homebrew на mac. Таким образом, последний подход был "brew uninstall python3" и переустановите awscli снова.
Эта ошибка может быть вызвана проблемой в вашем файле virtualenv. Например, у меня был существующий рабочий virtualenv, и я запустилbrew install awscli
и с этой ошибкой он сломал мой virtualenv. Если это так, удаление и воссоздание вашего virtualenv (так же, как вы его изначально создавали) должно решить проблему. Это сработало для меня.
Эта работа для меня.
brew upgrade
brew uninstall aws-sam-cli
brew install aws-sam-cli
Если:
- вы переустанавливали/переустанавливали awscli
- и сталкиваетесь с этой проблемой, когда работаете с виртуальной средой Python Poetry .
Затем просто удалите env, например:
# MacOS paths
rm -rf /Users/<user>/Library/Caches/pypoetry/virtualenvs/<your_virtual_env_name>
Чтобы получить имя и путь к env, вы можете сделать:
poetry shell
Будет такая ошибка:
EnvCommandError
Command ['/Users/<user>/Library/Caches/pypoetry/virtualenvs/<your_virtual_env_name>/bin/python', '-W', 'ignore', '-'] ...
Скопируйте путь env, сделайте
rm -rf <path>
и после этого сделать
poetry shell
Если вы установили AWS CLI через curl в соответствии с официальными инструкциями AWS по адресу https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html, просто повторите эти команды без каких-либо предварительных удалений. для меня:
curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
sudo installer -pkg ./AWSCLIV2.pkg -target /