-
Notifications
You must be signed in to change notification settings - Fork 132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
can't find libcvmfs.a in the rpms for almalinux9 #3601
Comments
Hi! This is as it is intended from our side - we've removed static libraries from cvmfs-devel a while ago, replacing them with the shared library in cvmfs-libs. If there's a particular usecase you need a static library for, I think you'd need to build from source with some small CMake adaptations, but the shared library should work just as well. I think also our packaging is correct, you may have been misled by |
@vvolkl The use case is In fact, as mentioned here: https://cvmfs.readthedocs.io/en/stable/apx-rpms.html, I think that |
Hi Dave, I'm trying to generate the official binaries for parrot. I had not updated the images we use for building them for a while, so I didn't notice that |
Right, apologies for not warning you about dropping the static libraries! I'm happy to provide these again for the next version, however this will likely require #3576 to avoid a symbol clash from LibreSSL. |
Apologies, that was my bad. Back at the time when we dropped the static library I missed discussing it with you. The background for dropping the static library is this: we switched to libressl to work around openssl 3 incompatibilities. We use a static built of libressl so that it doesn't clash with openssl, and that static builds is part of the libcvmfs_crypto dynamic library where the libressl symbols are hidden. Making everything part of a single static library and avoid openssl symbol clashes turned out to be difficult. Now, for the 2.12 release this summer we would like to move to libnettle as the low-level crypto library. When this is done, as Valentin says, we could in principle again build a static libcvmfs. Do I understand correctly that you'd like (more or less) a single relocatable binary for parrot, e.g. linking with rpath to libcvmfs DLLs would not be acceptable? |
Valentin, Jakob, I think I have seen those OpenSSL incompatibilities when trying to statically link from source, and therefore was very convenient to get it from the rpm. The use case for parrot is to land in compute nodes that have not been setup in any way and that may not have the correct namespaces/container stuff enabled for cvmfsexec, so it is more convenient to have everything in a single executable. As more sites support namespaces/apptainer/etc., the need for parrot is reduced, thus it would not be worth it if it takes a great effort on your part to generate libcvmfs.a. As you mention, one option would be do rpath tricks with the dynamic libraries, however currently parrot is more likely to be supporting older or legacy workflows that have not changed in a while, so the more we can keep things the same the better. One thing I will try for now is to use cvmfs-devel-0:2.10.1-1.el9, which I think is the last version with libcvmfs.a so I can get a parrot binary for almalinux9. If generating libcvmfs.a gets too messy even after #3576, we can decide with Doug what to do about parrot in the future. Thanks for all your work! |
Probably I'm missing something obvious, but after doing a
dnf install cvmfs-devel
on almalinux9 I cannot findlibcvmfs.a
.From a repoquery:
However, inspecting the rpms I don't see it:
The text was updated successfully, but these errors were encountered: