-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
[AMD] 'libamdhip64.so' has too-recent versioned symbols for "manylinux_2014" and "manylinux_2_28" wheels builds #3620
Comments
'libtriton.so' being flagged is a user error on my part since that binary is built every time and would be linked against the libraries in the container image. I ran the above against natively built wheel on Ubuntu 22.04. So it got flagged as well. The 'libamdhip64.so' error is real since that's provided in the source repo by the AMD team. That's the root cause of the wheels failure in CI. manylinux build repro script: #!/bin/bash export LATEST_DATE=$(TZ=UTC0 git show --quiet --date='format-local:%Y%m%d%H%M%S' --format="%cd") python3 -m cibuildwheel python --output-dir wheelhouse To find the exact incompatible symbols, install auditwheel-symbols using pip, run 'auditwheel-symbols <wheel_file>'. I couldn't figure out how to get the built wheels from the container before they are deleted when the repair step fails. So I just did a native ubuntu build and ran the above command on it to see the incompatible symbols in the AMD library. As for the fix, I propose that static binaries like these should be built in the many_linux container version intended for full manylinux wheel build to avoid this in the future. In this case, triton is currently using 'manylinux2014' but trying to move to 'manylinux_2_28'. So I am not sure if it makes sense to fix it for the former then upgrade the library again to the latter or just leap frog to the latter. @jlebar can you please help loop in the right AMD contact to address this? Thank you. |
cc @antiagainst ^^ |
Thanks for the report! Yeah, the HIP dependency issue is what I'm about to work on next. Will factor this in. |
Nightly wheels (4/08/24) are broken in tip of main branch with error
I ran into this issue as well as part of my PR to upgrade wheels to many_linux_2_28. While debugging the issue, I found auditwheel-symbols which was more helpful in pinpointing the exact issue.
Here are the incompatible/offending symbols per manylinux version.
manylinux_2014 (current POR on Triton)
many_linux_2_28 (latest and upgrade target for Triton):
manylinux_2_28 uses AlmaLinux 8 (RHEL 8 derivative). Its newest GLIBCXX is 3.4.25 and GLIC 2.28. By comparison, Ubuntu 22.04 supports GLIBCXX 3.4.30 and GLIBC 2.35. I assume this is why it's not blocking Triton devs' builds I don't know to fix this issue completely but it seems like 2_28 wheels upgrade would get closer to closing the gap.
The text was updated successfully, but these errors were encountered: