From 226ad989316e2120879cb17b78e9f89ef33ac3c5 Mon Sep 17 00:00:00 2001 From: Magne Sjaastad Date: Fri, 4 Oct 2024 12:38:46 +0200 Subject: [PATCH] Add vcpkg.json used to build OpenSSL3 --- scripts/additional-packages/readme.md | 17 +++++++++++++++++ scripts/additional-packages/vcpkg.json | 6 ++++++ 2 files changed, 23 insertions(+) create mode 100644 scripts/additional-packages/readme.md create mode 100644 scripts/additional-packages/vcpkg.json diff --git a/scripts/additional-packages/readme.md b/scripts/additional-packages/readme.md new file mode 100644 index 0000000000..02561a573a --- /dev/null +++ b/scripts/additional-packages/readme.md @@ -0,0 +1,17 @@ +# Workflow to build and distribute OpenSSL 3 + +From Qt 6.5, OpenSSL 3 is used for authentication workflows. On RHEL8 the only available system package is OpenSSL 1.1. The authentication framwork in Qt (in a ResInsight build used by install/plugins/tls/libqopensslbackend.so) requires OpenSSL3. This document describes how to build OpenSSL3 using vcpkg and bundle required dynamic libraries in the install package of ResInsight. When running ResInsight without these libraries, the following error message is displayed: + + qt.tlsbackend.ossl: Incompatible version of OpenSSL (built with OpenSSL >= 3.x, runtime version is < 3.x) + qt.network.ssl: No functional TLS backend was found + +1. Build and install ResInsight +2. Build a dynamic version of OpenSSL 3 using vcpkg. In the /build folder, execute the following: + + ../ThirdParty/vcpkg/vcpkg install --triplet x64-linux-dynamic --x-manifest-root=../scripts/additional-packages --x-install-root=./vcpkg_installed + + Make sure that the libraries `libcrypto.so/libssl.so` are installed in `/build/vcpkg_installed/lib64` +3. Copy `libcrypto.so/libssl.so` to the `/lib64` folder in the install package for ResInsight +4. Successful install of these libraries will show the text "Use of SSL is available and supported" in the About dialog in ResInsight. + +https://learn.microsoft.com/en-us/vcpkg/commands/common-options#manifest-root diff --git a/scripts/additional-packages/vcpkg.json b/scripts/additional-packages/vcpkg.json new file mode 100644 index 0000000000..95b8d93037 --- /dev/null +++ b/scripts/additional-packages/vcpkg.json @@ -0,0 +1,6 @@ +{ + "_description":"This file is used to build OpenSSL 3 on platforms where this is missing", + "dependencies": [ + "openssl" + ] +}