Skip to content

install-deps.sh: adding some missing Fedora-43 deps#66736

Closed
ronen-fr wants to merge 1 commit intoceph:mainfrom
ronen-fr:wip-rf-deps-fdr43
Closed

install-deps.sh: adding some missing Fedora-43 deps#66736
ronen-fr wants to merge 1 commit intoceph:mainfrom
ronen-fr:wip-rf-deps-fdr43

Conversation

@ronen-fr
Copy link
Contributor

Fixes: https://tracker.ceph.com/issues/74277

Note: a draft, as I do not have a way to test the change directly.
Let's see if the CI process uses this install-deps script.

Fixes: https://tracker.ceph.com/issues/74277
Signed-off-by: Ronen Friedman <rfriedma@redhat.com>

This comment was marked as off-topic.

@ronen-fr ronen-fr marked this pull request as ready for review December 29, 2025 17:26
Comment on lines +519 to +521
# packages needed on Fedora 43
$SUDO dnf group install -y c-development
$SUDO dnf install -y libatomic keyutils-libs-devel systemd-devel libblkid-devel openldap-devel
Copy link
Contributor

@tchaikov tchaikov Dec 31, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For Fedora-based distributions, we use dnf -y builddep to install build dependencies, which are tracked in ceph.spec.in. To simplify maintenance, I'd recommend keeping all dependencies centralized in that file rather than maintaining them in multiple locations.

I've reviewed the dependencies added in this PR, and most are already covered by ceph.spec.in:

The only new addition appears to be systemd-devel. Could you clarify why this dependency is needed explicitly? Is there a specific build error or configuration issue that occurs without it?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @tchaikov . I was not aware of the role of ceph.spec.in in Fedora.

But as for your main question:
The list was created trying to run do_cmake on a new Fedora 43 machine - after running install-deps.
So - something is wrong here. Even if appearing in that list - those deps were not installed by install-deps.

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 1, 2026

@tchaikov there seems to be a bug in the way the g++ version is tested:
No match for argument: gcc-toolset-13-gcc-c++ >= 13.3
No match for argument: gcc-toolset-13-libatomic-devel
No match for argument: gcc-toolset-13-runtime

The version installed is '15'. We should not be checking for toolset-13

Update:

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 1, 2026

Q&D modification to ceph.spec.in got me past that step:
The change: https://gist.github.com/ronen-fr/4a8987af6551cc734cd3bfef8c19363b

Now failing in Wheel:

Collecting rstcheck==3.3.1 (from -r requirements-lint.txt (line 7))
  Downloading rstcheck-3.3.1.tar.gz (13 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error
  
  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [24 lines of output]
      Traceback (most recent call last):
        File "/home/rfriedma/c1/ceph/install-deps-python3/lib64/python3.14/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
          main()
          ~~~~^^
        File "/home/rfriedma/c1/ceph/install-deps-python3/lib64/python3.14/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 373, in main
          json_out["return_val"] = hook(**hook_input["kwargs"])
                                   ~~~~^^^^^^^^^^^^^^^^^^^^^^^^
        File "/home/rfriedma/c1/ceph/install-deps-python3/lib64/python3.14/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 143, in get_requires_for_build_wheel
          return hook(config_settings)
        File "/tmp/pip-build-env-bx43w7vm/overlay/lib/python3.14/site-packages/setuptools/build_meta.py", line 331, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
                 ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-bx43w7vm/overlay/lib/python3.14/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires
          self.run_setup()
          ~~~~~~~~~~~~~~^^
        File "/tmp/pip-build-env-bx43w7vm/overlay/lib/python3.14/site-packages/setuptools/build_meta.py", line 512, in run_setup
          super().run_setup(setup_script=setup_script)
          ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "/tmp/pip-build-env-bx43w7vm/overlay/lib/python3.14/site-packages/setuptools/build_meta.py", line 317, in run_setup
          exec(code, locals())
          ~~~~^^^^^^^^^^^^^^^^
        File "<string>", line 22, in <module>
        File "<string>", line 16, in version
      AttributeError: 'Constant' object has no attribute 's'
      [end of output]

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 1, 2026

Created #66772 to fix the wrong setting of dts_version.
Testing that one now.

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 1, 2026

Created #66774 to complete the minimal changes for install-deps.sh to complete on Fedora 43.

@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 1, 2026

Turning back into a Draft, until 66772 & 66774 are merged

@ronen-fr ronen-fr marked this pull request as draft January 1, 2026 16:00
@ronen-fr
Copy link
Contributor Author

ronen-fr commented Jan 2, 2026

Turns out that #66772 & #66774 are almost all that's needed to build on Fedora 43.
The only missing component: ccache.

@ronen-fr
Copy link
Contributor Author

Almost fully covered by the two PRs mentioned above

@ronen-fr ronen-fr closed this Jan 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants