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
0%
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
History
#1 Updated by John Spray about 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 about 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 about 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 about 5 years ago
- Duplicated by Bug #37330: cmake complains of OpenSSL mismatch on Fedora 29 added
#5 Updated by Jason Dillaman about 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 almost 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