On 28/07/16 15:20, Norbert Lange wrote: > Package: coreutils > Version: 8.25-2 > Severity: normal > > Dear Maintainer, > > I am trying to use stdbuf tool on a 32bit Binary, this will result > in a failure: > > ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/coreutils/libstdbuf.so' from > LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored. > > To make this work seemlessly, > LD_PRELOAD would need to be used with the plain library libstdbuf.so > and the library would need to be installed in the proper locations > for 64 and 32bit. > > Likely this would mean using a seperate binary package for the library to > allow co-installing both?
Notes on this upstream at http://bugs.gnu.org/8960 Stuff I noted previously... You can't install coreutils 32 bit and 64 bit together, so to support this the libs would need to be separated out to a separate package. I.E. one would have a coreutils package that depended on coreutils-lib.i686 and coreutils-lib.x86_64, which would install to /usr/lib{,64}/coreutils/libstbuf.so respectively. Then you would have the flexibility to set both LD_PRELOAD_{32,64} Currently we don't support separate (per arch) libs because of: http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=e23f1795 So we'd have to revert that essentially as automake is too restrictive here and may support the orig var in newer versions? We might also have to adjust setting of PKGLIBEXECDIR at build time? Is this complexity worth it? How often does 64 bit coreutils need to control buffering for 32 bit programs? We've not been asked for that flexibility at present.

