[Interest] Linux openssl 1.1.0 versus 1.0.X

Thiago Macieira thiago.macieira at intel.com
Mon Sep 17 00:21:05 CEST 2018


On Sunday, 16 September 2018 03:14:28 PDT Roland Winklmeier wrote:
> Ideally Qt would load any version at runtime. So far it's a compile time
> decision only. Would it be possible to built support for both?

It's technically possible, but not something you should expect us to do. For 
two reasons:

1) it's difficult
OpenSSL API from 0.9.7 to 1.0.x did change and break binary compatibility, but 
the changes were minor. Most of the time, QtNetwork code was not affected and, 
when it was, it was easy to detect at runtime which version it was. That's not 
the case betwen 1.0 and 1.1: the extent of changes is very big and not easy to 
work around. In order to do this, we'd need BOTH sets of headers present at 
compile time and not a *single* Linux distribution provides a way to do that.

2) it's not worth it
OpenSSL 1.1 and its ABI is the future. All modern Linux distributions have it, 
with most providing 1.0 for compatibility with software that has not 
recompiled yet. 

At this point, if you need to keep compatibility with older distros, I 
recommend using 1.0 and insisting that your user install their distro's 1.0 
compatibility package. You'll only have problems with some "ultra modern" 
Linux distributions that have dropped 1.0 altogether.

-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center






More information about the Interest mailing list