Date: Wed, 21 Jun 2006 12:39:09 -0400 (EDT) From: Daniel Eischen <deischen@freebsd.org> To: Alexander Leidinger <Alexander@Leidinger.net> Cc: freebsd-current@freebsd.org, Norikatsu Shigemura <nork@freebsd.org> Subject: Re: Linux-flashplugin7 & rtld - RFC Message-ID: <Pine.GSO.4.64.0606211204300.23942@sea.ntplx.net> In-Reply-To: <20060621155053.d6lseiz8z4ow8wo8@netchild.homeip.net> References: <44986777.6070601@FreeBSD.org> <20060621061437.GA53019@fit.vutbr.cz> <ygeodwn2fea.wl%ume@mahoroba.org> <2265.211.18.249.19.1150871779.squirrel@mail.ninth-nine.com> <20060621121114.h6udocel5wsgg8sg@netchild.homeip.net> <2692.219.127.74.121.1150885501.squirrel@mail.ninth-nine.com> <20060621155053.d6lseiz8z4ow8wo8@netchild.homeip.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 21 Jun 2006, Alexander Leidinger wrote: > Quoting Norikatsu Shigemura <nork@freebsd.org> (from Wed, 21 Jun 2006 > 19:25:01 +0900 (JST)): > >>> Quoting Norikatsu Shigemura <nork@freebsd.org> (from Wed, 21 Jun 2006 >>> 15:36:19 +0900 (JST)): >>>>> Nork-san says that it is hard to make LPW work on 7-CURRENT. But, he >>>>> is trying to make it work with another approach. >>>> Yes, I'm working Userland COMPAT_LINUX technology[TM]:-). >>> Can you be a little bit more verbose what this is? Just a high level >>> overview. I'm curious since I have some ideas about some kind of >>> cross-compatibility "something" too (a combination of objcopy, a >>> liblinux2bsd and maybe some libmap stuff). >> >> I'm implementing like following codes to libc/libm/libpthread >> on 7-current with SYMVER_ENABLED=yes. > > [example] > > Ugh... I like parts of this (it's the same I thought about myself), but parts > of this are... not optimal in my opinion. > > I don't like to spam our libXXX to contain GLIBC symbols. First I feared that I don't think that is the intent and I would oppose polluting our base libraries with GLIBC symbols. I think the proposed solution was to make separate libraries with the GLIBC symbols that just call out to our own libraries, and use libmap.conf accordingly. I have tried this months ago and think I ran into the same problem that nork has run into -- the loader doesn't load the mapped libraries because it thinks libc (our own libc) is already loaded. > Did you tried to put this into a liblinux2bsd? The idea I had was to try if > such a lib can be "attached" to e.g. linux flashplugin. Either with some > objcopy (or similar) stuff, by trying to link again (with liblinux2bsd), or > with libmap.conf. Another nice try is to have a program/script which does > some known obj* stuff with object files, libs and/or programs. The examples I > wanted to look at with this stuff are your linuxpluginwrapper, the > linuxthreads port, my icc port and maybe the ifc port (it's basically an > adoption of my icc port, but AFAIR there are some enhancements). All of them > contain already some kind of mappings between linux and bsd. And maybe a > combination of both ways (liblinux2bsd and a script which does obj* stuff) > could lead to a successfull assimilation of some linux-only stuff. When I was playing around with trying to get linuxpluginwrapper to work, I had scripts that parsed the undefined symbols from flashplayer.so and automatically created a library with those symbols (that called out to our own libc functions). It wasn't that hard to do, but I got side-tracked and never was able to get rtld to load the mapped library. -- DE
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.64.0606211204300.23942>