Как исправить не найденную точку входа при установке библиотек в среде conda

Я работаю над анакондой, создавая в ней несколько сред. Я создал любую среду camelot, поэтому теперь я хочу установить ее в разных библиотеках в этой среде. Так, например, я устанавливаю панд в эту среду (камелот), я пишу:

conda install pandas 

or

conda install -c conda-forge camelot-py

Тогда это дает мне ошибку:

python.exe-Entry Point Not Found
   The procedure entry point OPENSSL_sk_new_reserve could not be 
   located in the dynamic link library.
   C:\Users\abc\Anaconda3\Library\bin\libssl11_-x64.dll

Сначала я подумал, что это может быть ошибка из-за переменной среды, я установил переменную среды для pyhton, но не смог разрешить


person Usman Ghani Mughal    schedule 29.07.2019    source источник
comment
Следующее решило проблему для меня github.com/conda/conda/issues/9003 # issuecomment-539348297   -  person Maz    schedule 18.10.2019
comment
@UsmanGhaniMughal Вы получили несколько рабочих предложений. Отметьте один из ответов как принятый.   -  person vestland    schedule 03.07.2020


Ответы (7)


как предлагается в здесь, я мог бы решить эту проблему, скопировав libssl-1_1-x64 dlls в Anaconda/DLLS на Anaconda/Library/bin (возможно, заменив его)

person M. Chavoshi    schedule 12.08.2019
comment
Не рекомендуется просто копировать библиотеки DLL. См. Мой ответ ниже - person titusjan; 23.01.2020

У меня возникла та же проблема при обновлении навигатора Anaconda, и я решил ее, заменив файл libssl-1_1-x64.dll в Anaconda3 / Library / bin на файл из < em> Anaconda3 / DLL.

person Divya Lekha    schedule 21.08.2019
comment
Спасибо, это устранило проблему для меня. - person Tensigh; 12.10.2019
comment
Это устранило проблему, но для меня это сломало openssl. Мне пришлось сделать conda clear --all и conda install openssl --force-reinstall, чтобы исправить это, как предложил @titusjan. - person okh; 08.02.2020
comment
Не conda clean --all? - person quant_dev; 09.09.2020

Как упоминал специалист по сопровождению Anaconda, здесь ...

перемещать библиотеки libssl таким образом не рекомендуется. Эти DLL дублируются, потому что в ваших пакетах происходит что-то подозрительное. В папке DLL не должно быть DLL openssl. Они должны быть в Library / bin

Посмотрев на файлы JSON в каталоге conda-meta, я обнаружил, что DLLs\libssl-1_1-x64.dll был установлен пакетом python 3.7.0, а Library\bin\libssl-1_1-x64.dll был установлен пакетом openssl. После дальнейшего расследования я обнаружил, что Python 3.7.0 не устанавливает OpenSSL как отдельный пакет, а Python 3.7.1 (и более поздние версии) делает.

Обычно обновление Python происходит так, как ожидалось, но если вы каким-то образом закончите установку одновременно пакетов python 3.7.0 и openssl, будет два libssl-1_1-x64.dll файла, и ваш дистрибутив Anaconda будет поврежден. (Вы можете легко проверить это с помощью команды conda list.)

Я думаю, что лучший способ исправить это:

  1. Переименуйте Library\bin\libssl-1_1-x64.dll в Library\bin\libssl-1_1-x64.dll.org (он вам понадобится позже).

  2. Скопируйте DLLs\libssl-1_1-x64.dll в Library\bin\libssl-1_1-x64.dll

  3. Обновите Python до версии 3.7.1 или выше, например, с conda update python. Это приведет к удалению файла DLLs\libssl-1_1-x64.dll.

  4. Удалить текущий Library\bin\libssl-1_1-x64.dll файл.

  5. Переименуйте Library\bin\libssl-1_1-x64.dll.org обратно в Library\bin\libssl-1_1-x64.dll. Это необходимо, потому что в противном случае на следующем шаге у меня возникнут ошибки HTTP.

  6. Переустановите OpenSSL с conda install openssl --force-reinstall, чтобы снова обновить его.

person titusjan    schedule 23.01.2020

У меня была точно такая же проблема, и она только началась сегодня. Как бы разрушил весь мой рабочий день, тбх ...

Я случайно сделал conda install ... в своей базовой среде, и он обновил conda и несколько других модулей. (В моем случае Conda перешла с 4.5.12 на 4.7.10.) В любом случае, после того, как я откатился, все снова стало работать, как ожидалось.

Если это причина вашей проблемы, вот решение.

  1. conda list --revisions

  2. conda install --revision 1 (В моем случае версия 1 была моей самой последней стабильной базовой средой.)

(Подробнее об этом: https://sriramjaju.github.io/2018-05-30-2-minute-recipe-how-to-rollback-your-conda-environment/)

Теперь меня беспокоит, что я случайно настроил что-то таким образом, который несовместим с новейшей версией conda.

Изменить: не следуйте этому последнему совету, если вы занимаетесь чем-либо, кроме игры в среде conda для тестирования модулей. См. this и это.

Наконец, если вам действительно нужно установить модули и выполнить некоторую работу как можно скорее, pip install [module name] все еще работал на меня, прежде чем я подумал о том, чтобы сделать реверсию.

person Matthew Black    schedule 29.07.2019
comment
Да! То же самое для меня, я просто обновляю conda в своем базовом env, и да, pip работает нормально, но не может ничего установить с помощью conda. Вы знаете, как пользоваться Camelot Packge? - person Usman Ghani Mughal; 30.07.2019
comment
Извините, у меня нет опыта работы с камелотом. Удалось ли вам вернуться к более ранней версии и снова заставить conda работать? - person Matthew Black; 30.07.2019
comment
Я полностью удалил анаконду, а затем переустановил ее, теперь она работает, я не знаю, как, но она работает, я думаю, это из-за обновления conda, которое я делал раньше в моем базовом env - person Usman Ghani Mughal; 30.07.2019
comment
Я рад это слышать! Удачи с камелотом. :) - person Matthew Black; 30.07.2019
comment
Спасибо, мужик! Это решение работает и в моем случае! Я не уверен, почему в обновленной версии conda возникла эта проблема! - person J.K; 13.09.2019
comment
Ваша рекомендация не подходит для людей, использующих среды conda. Вопрос OP касается решения проблем в среде conda. Использование pip в средах conda может повредить среду conda, потому что pip не выполняет проверку согласованности среды для сред conda. Он помещает пакеты в среду, о которой впоследствии conda не знает. Для получения дополнительной информации см. Справочные страницы conda: docs.conda.io/projects/conda/en/latest/user-guide/tasks/ - person Rich Lysakowski PhD; 31.08.2020
comment
@RichLysakowskiPhD Хороший отзыв. Я отредактировал свой ответ. Ваше здоровье! - person Matthew Black; 01.09.2020

Моя проблема была такой же. Я только что удалил анаконду и снова установил ее. И проблема решена.

person Özlem Hüma    schedule 06.04.2020

При обновлении пакета spyder и conda я получал такую ​​же ошибку.

python.exe-Entry Point Not Found
   The procedure entry point OPENSSL_sk_new_reserve could not be 
   located in the dynamic link library.
   C:\Users\abc\Anaconda3\Library\bin\libssl11_-x64.dll

решение:

  • Я заменил libssl-1_1-x64 dlls с Anaconda/DLLs на Anaconda/Library/bins, как было предложено здесь.
  • Перед открытием настольного приложения Anaconda Navigator я обновил conda в Anaconda Prompt, используя conda update conda. conda успешно обновлена.
  • Затем я обновил spyder, используя команду conda update spyder в Anaconda Prompt. spyder обновлен и работает успешно.
person Pathik    schedule 27.04.2020
comment
Похоже, это решило проблему, от которой я страдала слишком долго. Я уже несколько месяцев не могу использовать conda install из-за ошибок dll. Я просто попробовал после того, как сделал то, что предлагается в ответе @ Pathik здесь, и это сработало! Это так помогло мне, спасибо! - person Casivio; 02.10.2020

Для тех, у кого по-прежнему возникают похожие проблемы с libssl11_-x64.dll или другими .dll файлами:

По возможности используйте pip install!


Сегодня у меня была такая же проблема с libcrypto-1_1-x64.dll при попытке установить с помощью

conda install -c plotly plotly

Это приводит к переходу на более раннюю версию anaconda и, в свою очередь, вызывает ошибку:

OPENSSL_sk_new_reserve [...] libcrypto-1_1-x64.dll

Вместо этого, используя, например,

pip install plotly==4.1.0

работает как шарм!

person vestland    schedule 18.09.2019
comment
Ваш ответ не по теме и плохая рекомендация для людей, использующих среды conda. Вопрос OP касается решения проблем в среде conda. Использование pip в средах conda может повредить среду conda, потому что pip не выполняет проверку согласованности среды для сред conda. Он помещает пакеты в среду, о которой впоследствии conda не знает. Для получения дополнительной информации см. Руководство conda docs.conda.io/projects/conda/en/latest/user-guide/tasks/ - person Rich Lysakowski PhD; 31.08.2020
comment
@RichLysakowskiPhD Спасибо за отзыв! Пожалуйста, предоставьте лучшее решение, если оно у вас есть. И если вы почувствуете такую ​​склонность, не стесняйтесь пометить мой ответ как Not an answer или In need of moderator intervention. В последнем случае не забудьте оставить конкретное и подробное объяснение. - person vestland; 31.08.2020