On Thu, 22 Jun 2006 23:04:16 -0400 Alexander Kabaev <kabaev_at_gmail.com> wrote: > On Thu, 22 Jun 2006 12:49:59 -0400 (EDT) > Daniel Eischen <deischen_at_freebsd.org> wrote: > > On Fri, 23 Jun 2006, Norikatsu Shigemura wrote: > > > On Wed, 21 Jun 2006 12:39:09 -0400 (EDT) > <SKIP> > > > spamming? junk symbols? Humm... I don't think so, but it > > > is POLICY that I think. Althought I'm working, I want to > > > merge 'Userland COMPAT_LINUX technology' to FreeBSD source > > > tree. I hope that you do consent. So I hope to discuss > > > _at_GLIBC_2.* symbols:-). > > No, I would still oppose that. I think separate libraries > > are the way to go. deischen: Sorry, I didn't read 'separate libraries'. > ... and I will support Daniel's objection if it will come to that. > Sorry, but Linux symbols in FreeBSD native libraries amount to only one > thing - pollution and nothing else. Humm.. Even if GLIBC version information in Version.def, should I say that it was polluted or not.... =============================================================================== Case of current LPW approch: If You use following setting: /etc/libmap.conf ----------------------------------------------- [/usr/X11R6/lib/linux-flashplugin7/libflashplayer.so] libpthread.so.0 ?????????????? libdl.so.2 ?????????????? libz.so.1 libz.so.3 libm.so.6 ?????????????? libc.so.6 ?????????????? /etc/libmap.conf ----------------------------------------------- (*) ?????????????? is nork-flash7.so or deischen-flash7.so or libc.so.7/libm.so.4/libpthread.so.2. You can get following result: | wrapper | wrapper/glibc w/o | wrapper/glibc w/ | none ---------------+-----------+---------------------+------------------+----- libc | NG | NG | may be NG | ng libc/glibc-ver | ng | may be NG | may be NG | ng libc/glibc | ok | may be OK | may be OK | OK NOTE #1 ----------------------------------------------------------------- libc: src/lib/libc without SYMVER_ENABLED libc/glibc-ver: src/lib/libc with SYMVER_ENABLED + GLIBC Versions.def libc/glibc: src/lib/libc with SYMVER_ENABLED + GLIBC Versions.def + GLIBC Functions NOTE #2 ----------------------------------------------------------------- wrapper: nork's LPW wrapper/glibc w/o: (deischen's LPW)++. I saw deischen's LPW, and I think that deischen's approch almost works. wrapper/glibc w/: (deischen's LPW)++ with libc/libm/libptread NOTE #3 -------------------------------------------------------------------- OK: I confirmed that this is good works. ok: I considered that this is good works. may be OK: I didn't confirmed, but I think that this is good works. may be NG: I didn't confirmed, but I think that this is not works. ng: I considered that this is not works. NG: I confirmed that this is not works. ------------------------------------------------------------------------- ERROR PATTERN #1: LoadPlugin: failed to initialize shared library /usr/X11R6/lib/linux-flashplugin7/libflashplayer.so [/lib/libc.so.7: version GLIBC_2.1 required by /usr/X11R6/lib/linux-flashplugin7/libflashplayer.so not found] ERROR PATTERN #2: LoadPlugin: failed to initialize shared library /usr/X11R6/lib/linux-flashplugin7/libflashplayer.so [/usr/X11R6/lib/linux-flashplugin7/libflashplayer.so: Undefined symbol "open"] =============================================================================== Case of current LPW + [firefox-bin] approch: If You use following setting: /etc/libmap.conf ----------------------------------------------- [firefox-bin] libc.so.7 ?????????????? libm.so.4 ?????????????? libpthread.so.2 ?????????????? [/usr/X11R6/lib/linux-flashplugin7/libflashplayer.so] libpthread.so.0 ?????????????? libdl.so.2 ?????????????? libz.so.1 libz.so.3 libm.so.6 ?????????????? libc.so.6 ?????????????? /etc/libmap.conf ----------------------------------------------- (*) ?????????????? is nork-flash7.so or deischen-flash7.so or libc.so.7/libm.so.4/libpthread.so.2. You can get following result: | wrapper | wrapper/glibc w/o | wrapper/glibc w/ | none ---------------+-----------+---------------------+------------------+----- libc | NG | NG | may be NG | ng libc/glibc-ver | ng | may be OK | may be OK | ng libc/glibc | ok | may be OK | may be OK | OK ERROR PATTERN #1: nothing =============================================================================== * Can we separate library to use Linux-flash7? Yes, we need following conditions (1 or more): 1. Following error should be banished. [/lib/libc.so.7: version GLIBC_2.1 required by /usr/X11R6/lib/linux-flashplugin7/libflashplayer.so not found] 1-a. To banish, I think that following code should be fixed at check_object_provided_version in src/libexec/rtld-elf/rtld.c. if (vd == NULL) { _rtld_error("%s: version %s required by %s not defined", depobj->path, vername, refobj->path); return (-1); } I tried to remove 'return (-1);', but I don't know side-effects. 1-b. Add GLIBC Version.def to libc/libm/libpthread. 2. firefox doesn't use libc/libm/libpthread. But wrapper has libc/libm/libpthread all codes. /etc/libmap.conf ----------------------------------------------- [firefox-bin] libc.so.7 wrapper.so libm.so.4 wrapper.so libpthread.so.2 wrapper.so /etc/libmap.conf ----------------------------------------------- So I think that glibc functions are integrated to libc/m/pthread. But above issue will be fixed, I may think that separate libraries are good way.Received on Mon Jun 26 2006 - 08:56:12 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:57 UTC