LSB wrapper library
George asked me to look at the following task:
https://sourceforge.net/pm/task.php?func=detailtask&project_task_id=23709&group_id=1107&group_project_id=3049
Let me first tell you what I did. I build glibc with the following
configure line:
/cvs/libc-lsb/configure --prefix=/opt/lsb --enable-add-ons --disable-profile --without-cvs
and created a configparms file in the build directory:
$ cat configparms
slibdir=/lib/lsb
rtld-installed-name=ld-lsb.so.1
config-LDFLAGS = -Wl,-dynamic-linker=/lib/ld-lsb.so.1
make install installed all the libraries in the right place with the
exception of /lib/ld-lsb.so.1, I just had to add a link from
/lib/lsb/ld-2.2.3.so to /lib/ld-lsb.so.1.
This glibc setup should work in case that we fork. But if we fork we
do need to fork *all* LSB libraries.
Everything seems to work fine, e.g.:
$ ldd /opt/lsb/bin/getconf
libc.so.6 => /lib/lsb/libc.so.6 (0x40019000)
/lib/ld-lsb.so.1 => /lib/ld-lsb.so.1 (0x40000000)
IMO ld-lsb.so.1 should *not* look into /lib and /usr/lib, no library
should live there. We should keep the namespaces really separate.
I used /opt/lsb (this can be changed) so that the lsb libs find their
config files and environment in a specified place. If we fork, we
really need not only separate libs but also separate locale files and
gconv modules - everything that gets compiled can not be shared.
Certainly some files can be shared but let's keep it easy for now.
I don't really understand the comments in the task but think they
don't apply in this setup. So what kind of problems do you see with
this?
Andreas
--
Andreas Jaeger
SuSE Labs aj@suse.de
private aj@arthur.inka.de
http://www.suse.de/~aj
Reply to: