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
Fix elfutils +debuginfod installation issue #36758
Conversation
0.9.50 is necessary for elfutils
To avoid picking up the system one
- Correct version for libmicrohttpd - libarchive without iconv to avoid configure error
# NB: Waiting on an elfutils patch before we can use libmicrohttpd@0.9.51 | ||
depends_on("libmicrohttpd@0.9.33:0.9.50", type="link", when="+debuginfod") | ||
# libarchive with iconv doesn't configure: https://github.com/spack/spack/issues/36710 | ||
depends_on("libarchive@3.1.2: ~iconv", type="link", when="+debuginfod") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can confirm that the problem initially presented itself with libarchive@3.6.2. Using the previous version allows elfutils to build.
maybe we should make this version dependent then?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Made libarchive@3.6.2 +iconv
a conflict
. Building against libarchive@3.5.2+iconv
works for me as well, and the concretizer is smart enough to figure out libarchive@3.6.2 ~iconv
by default.
This resolves my issues in building gdb. |
Older versions build fine with iconv
@hainest would you be OK with this temporary fix until uptream libarchive is fixed? |
@tmadlener This works for me. Thanks for working on it! |
This is, at best a temporary solution until libarchive sorts itself out, right? There was an active discussion of this in the libarchive pull requests libarchive/libarchive#1825 All of the above are short but a bit different for how they solve the The last one, 1825 got merged after 3.6.2 was released, although some Anyone know enough about pkgconfig to say what is the "right" solution |
Yes, I would also consider this a temporary solution. I am also no expert in any way in pkgconfig, so I can't weigh in either on which would be the proper way to fix this. I have however entirely missed that they merged a PR to "fix" this (for a definition of fix). We could also try to apply that patch to |
@tmadlener @G-Ragghianti @scheibelp So, with the understanding that this is a temporary workaround until @scheibelp Why is CI failing? The patch includes:
And the error message is:
Is spack assigning Note: libarchive has a |
Yes I think you just need this change. |
@tmadlener I checked with Massimiliano at the Wed spack meeting. Yes, you need
Without the |
Thanks for the hint. Fixed now, and CI seems happier. |
@mwkrentel @hainest I think this needs approval again, after fixing the merge conflict |
@scheibelp is there anything still missing for this to get merged? |
Thanks! |
* elfutils cannot build against libarchive@3.62+iconv * elfutils needs libmicrohttpd version 0.9.50 or older * elfutils: explicitly depend on pkg-config * libmicrohttpd: Add several new versions
Fixes #36710
libmicrohttpd
. Also add an older one to makeelfutils
configure with+debuginfod
libarchive~iconv
in order to avoid another configure error.elfutils
depend onpkgconfig
explicitly to avoid picking up the system one.