pyinstaller / pyinstaller/pyinstaller

Document that `qt.tlsbackend.ossl: Failed to load libssl/libcrypto.` can be caused by missing `libssl-1_1-x64.dll` file

Open
#7,415 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
13.1k
Forks
2k
Avg merge
1d 3h
Merged PRs (30d)
11

Description

For months, I have been wondering why I was getting

qt.tlsbackend.ossl: Failed to load libssl/libcrypto.

warnings while building my PySide6-based app, even with --log-level=ERROR.

My app does not use network communication and appeared to be working fine, but it's hard to be certain with such kind of error messages.

I now found out that by adding a folder containing libssl-1_1-x64.dll to PATH, e.g.,

set PATH=%PATH%;%ProgramFiles%\Git\mingw64\bin

I can make this message go away. I think this would be great to document. (Maybe this issue is enough already for other people to find via Google.)

I am a bit surprised pyinstaller does not error itself when not finding it here:
https://github.com/pyinstaller/pyinstaller/blob/d6ff0802dd6f2fbeccb4a6c47e1cf24c61c31205/PyInstaller/utils/hooks/qt/__init__.py#L604-L608

[By the way, if there was a similarly simple fix for qt.core.qobject.connect: QObject::connect(QObject, Unknown): invalid nullptr parameter, that would be appreciated as well. It's the only message standing between me and a completely clean console output when building with pyinstaller.

Edit: this one comes from here
https://github.com/pyinstaller/pyinstaller/blob/d6ff0802dd6f2fbeccb4a6c47e1cf24c61c31205/PyInstaller/utils/hooks/qt/__init__.py#L591-L595
and is independent of PyInstaller, as it can be reproduced using python -c "from PySide6.QtNetwork import QSslSocket; QSslSocket.supportsSsl()". I reported https://bugreports.qt.io/browse/PYSIDE-2216 for that.]

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with PyInstaller/utils/hooks/qt/init.py around lines 604-608 and review the linked Qt hook behavior. Document that the warning can result from a missing libssl-1_1-x64.dll and include the PATH example; the work is done when users can understand the cause and a simple remedy from the project documentation.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.