-
Notifications
You must be signed in to change notification settings - Fork 204
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
disable strict RPATH sanity check by default, allow re-enabling it via --strict-rpath-sanity-check
configuration option
#4475
Conversation
121bbe9
to
1989fa3
Compare
…tion of mixing of using RPATH with dependencies that were installed without RPATH
1989fa3
to
1e3153a
Compare
The regex matches the Sadly this may not help us. It looks like there is an RPATH section in all the libraries checked. |
Works as designed:
The docs page still needs to be created. When using |
Ah, snap, I overlooked that... I can adjust the regex so that doesn't happen, or simply filter out " That does make me wonder: if the RPATH section is there for all dependency libraries, then why are the binaries still unable to find some libraries? |
I'm testing a rebuild with |
And that still fails. |
perhaps lammps uses something like |
Without and with RPATH both are the same
|
so, to me it looks like this issue occurs when:
for example, in the case of
|
we can figure out where this happens, but the command I came up with isn't exactly quick to run. time find -L $(echo $LIBRARY_PATH | sed -E -e 's/:/ /g' -e "s#$EBROOTHDF5/lib(64|)##g" ) -maxdepth 1 -type f -name '*.so*' -exec sh -c "tmp=\$(readelf -d {}); tmp3=\$(echo \$tmp | grep -q 'RPATH'); if \$(echo \$tmp | grep -q 'libhdf5_hl') && ! \$(echo \$tmp | grep -q 'RPATH') ; then echo {}; fi" \;
/project/boegelbot/Rocky8/haswell/software/netCDF/4.9.2-gompi-2023a/lib/libnetcdf.so.19
/project/boegelbot/Rocky8/haswell/software/netCDF/4.9.2-gompi-2023a/lib/libnetcdf.so
real 0m46.667s
user 0m10.543s
sys 0m35.770s |
as an aside, a fast and easy way of detecting a mixed stack would be to grep the latest |
Actually, this might be easier than I thought. |
--strict-rpath-sanity-check
configuration option
…nd during RPATH sanity check
…sanity-check + also verify behaviour without --strict-rpath-sanity-check
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.
lgtm
implement detection of mixing of using RPATH with dependencies that were installed without RPATH
related: easybuilders/easybuild-easyconfigs#20051
Marked as WIP since I'm still verifying this actually works as designed...(works as intended)