Project

General

Profile

Bug #36425

Can't compile Ceph on Fedora 29: CMake Error at src/pybind/CMakeLists.txt:93 (message): Python and Ceph link to different OpenSSL versions: 1.0.2 vs 1.1.1

Added by Yaniv Kaul over 5 years ago. Updated about 5 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Category:
build
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
2 - major
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

I'm trying to compile Ceph on Fedora 29 beta, and it fails with:
-- Performing Test HAVE_STDLIB_MAP_SPLICING
-- Performing Test HAVE_STDLIB_MAP_SPLICING - Failed
-- Performing Test COMPILER_SUPPORTS_DIAGNOSTICS_COLOR
-- Performing Test COMPILER_SUPPORTS_DIAGNOSTICS_COLOR - Success
-- Found PythonInterp: /usr/bin/python2.7 (found suitable version "2.7.15", minimum required is "2")
-- Found PythonLibs: /usr/lib64/libpython2.7.so (found suitable version "2.7.15", minimum required is "2")
-- Performing Test HAS_VTA
-- Performing Test HAS_VTA - Success
-- Found Cython: 0.28
CMake Error at src/pybind/CMakeLists.txt:93 (message):
Python and Ceph link to different OpenSSL versions: 1.0.2

vs 1.1.1

-- Configuring incomplete, errors occurred!
See also "/home/ykaul/github/ceph/build/CMakeFiles/CMakeOutput.log".
See also "/home/ykaul/github/ceph/build/CMakeFiles/CMakeError.log".

install-deps.sh passed fails with:
No matching package to install: 'python-tox'

Python3-tox is installed.


Related issues

Duplicated by devops - Bug #37330: cmake complains of OpenSSL mismatch on Fedora 29 Resolved

History

#1 Updated by John Spray over 5 years ago

It's kind of interesting that that's the case on Fedora (that they link their python build to a different openssl than the one available to Ceph). Since Fedora is meant to be a bleeding edge distro, I'm wondering why 1.0.x versions are in play at all.

Anyway -- this build check seems to be working as intended (see discussion on https://github.com/ceph/ceph/pull/22659), linking Ceph with a different openssl vs. the python interpreter would lead to pain. I'd suggest raising this with the distro.

#2 Updated by John Spray over 5 years ago

  • Status changed from New to Rejected

Related: http://tracker.ceph.com/issues/24282

Makes me wonder if this is a symptom of Fedora's move to "modular" builds, where they might be building python in a whole different environment with a different openssl.

#3 Updated by John Spray over 5 years ago

Anyway: unless there is more to the story, this is a bug to raise with the distro, as Ceph itself can't fix the situation of two libraries (openssl and python) in a distro being mutually incompatible.

#4 Updated by Brad Hubbard over 5 years ago

  • Duplicated by Bug #37330: cmake complains of OpenSSL mismatch on Fedora 29 added

#5 Updated by Jason Dillaman over 5 years ago

Just to follow up on this ticket (even though it was rejected), the issue is that Python 2 is near EOL (1 year to go) and it would involve effort to backport OpenSSL 1.1 support -- therefore, they have it linked against a 1.0 compat version of OpenSSL for just Python 2 -- Python 3 is linked against OpenSSL 1.1.1.

#6 Updated by Jeff Layton about 5 years ago

Alfredo Deza suggested this workaround, to force ceph to build against python3:

$ cmake .. -DWITH_PYTHON2=OFF -DWITH_PYTHON3=ON -DMGR_PYTHON_VERSION=3

Also available in: Atom PDF