This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

ld.so's LD_LIBRARY_PATH/LD_PRELOAD in mixed 32bit and 64bit environment


Hello,

It must have been discussed many times in the past, but I could not
find any reference, so here it is [probably again]...

In an environment where 32bit application forks 64bit application,
there can be no common LD_LIBRARY_PATH/LD_PRELOAD.

Setting LD_PRELOAD for 32bit shared object will result in an error
within the 64bit application.
Setting LD_LIBRARY_PATH will probably make one fails too as it will
try to load the wrong bitness.

Solaris has solved this using LD_LIBRARY_PATH_32/LD_LIBRARY_PATH64,
LD_PRELOAD_32/LD_PRELOAD_64, solution was almost perfect, however
these also overrides the common LD_LIBRARY_PATH, LD_PRELOAD, but it is
better than nothing.

There is also LD_CONFIG/LD_CONFIG_32/LD_CONFIG_64 variable to
configure the core search libraries. So it is comfortable to add
search libraries without effecting the whole scripting of the system.

What is glibc's position on this mixed environments?
Is there is another solution within current glibc's scope?
I've read part of the sources and it looks like the
LD_PRELOAD/LD_LIBRARY_PATH are hardcoded, and there is no option to
configure core search locations separate for 32/64 from environment or
configuration.

Thanks,
Alon.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]