IRC channel logs

2023-07-28.log

back to list of logs

<flypaper-ultimat>hey, i was helping out mehrad who is starting with guix with R, and theres "leakage" of /usr/lib/local for loading libraries on foreign machines
<flypaper-ultimat>in this case it was loading readline from /usr/lib/local rather than the one from the /gnu/store
<flypaper-ultimat>the problem is that the${R_HOME}/etc/ldpaths sets LD_LIBRARY_PATH to o.a. /usr/local
<flypaper-ultimat>and the R starting script sources that
<mehrad>Basically running `guix shell r -- R` would result in `/gnu/store/1jxmimp2fv9620kxhm7m7yy8wr0xd7ny-r-minimal-4.3.1/lib/R/bin/exec/R: symbol lookup error: /usr/local/lib/libreadline.so.8: undefined symbol: UP`
<flypaper-ultimat>the fix would probably be to `substite*` the "/usr/lib/local" in etc/ldpaths in a post-configure phase.
<flypaper-ultimat>whatcha think, rekado ?
<flypaper-ultimat>if you `LD_DEBUG=libs guix shell r -- R | grep /usr/local/` you can see that it checks there.
<flypaper-ultimat>heres how to reproduce it on just guix: `guix shell -C -F strace r --expose=$(guix build readline@6.2)/lib/libreadline.so=/usr/local/lib/libreadline.so.8 -- R`b
<flypaper-ultimat>(ignore that last `b`)