pyinstaller / pyinstaller/pyinstaller
Document that `qt.tlsbackend.ossl: Failed to load libssl/libcrypto.` can be caused by missing `libssl-1_1-x64.dll` file
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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