-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
Effort - MediumEffort - MediumEffort - MediumFrequency - MonthlyFrequency - MonthlyFrequency - MonthlyPriority - LaterPriority - LaterPriority - LaterReach - SomeReach - SomeReach - SomeSeverity - S2Severity - S2Severity - S2communitycommunitycommunityfeaturefeaturefeature
Description
Problem
Linking openssl statically by default implies the image must have a static libcrypto.a
, but not all *nixes ship that when installing openssl
. In particular, RockyLinux 8 doesn't ship that, causing pip install pymgclient==1.3.1
to fail.
How was it discovered?
pip install gqlachemy
fails on a fresh Rockylinux 8 image with the build prerequisites installed. Error message suggests something's up withpymgclient
and openssl's version.
CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (missing: OPENSSL_CRYPTO_LIBRARY) (found version "3.0.8")
- Tried opting out of the static linking and the installation worked.
pip install pymgclient \
--global-option="build_ext" \
--global-option="--static-openssl=0"
Proposed fix
- Keep the openssl static linking the default behaviour and add another CI job.
Add another base image, say rockylinux:8
, to CI where libcrypto.a
is not provided by openssl-devel
or libssl-dev
. Fix the rest of CI job until the build passes and possibly improve documentation on the build process.
The reason ubuntu-22.04
didn't surface this error is because libssl-dev
ships a libcrypto.a
by default and the Runner comes with an openssl installed.
OR
- Remove the default static linking of openssl:
# setup.cfg
[build_ext]
static_openssl = 0
mmmvvvppp, sapalli2989, jokester, gislerro and juanmah
Metadata
Metadata
Assignees
Labels
Effort - MediumEffort - MediumEffort - MediumFrequency - MonthlyFrequency - MonthlyFrequency - MonthlyPriority - LaterPriority - LaterPriority - LaterReach - SomeReach - SomeReach - SomeSeverity - S2Severity - S2Severity - S2communitycommunitycommunityfeaturefeaturefeature
Type
Projects
Status
Todo