Date: Mon, 8 Jun 1998 13:45:23 +0300 (EEST) From: Vladimir Kushnir <kushn@mail.kar.net> To: freebsd-current@FreeBSD.ORG Cc: Amancio Hasty <hasty@rah.star-gate.com> Subject: Re: XFree86 & elf Message-ID: <Pine.BSF.3.96.980608131401.6603C-100000@kushnir.kiev.ua> In-Reply-To: <Pine.BSF.3.96.980607225411.14644B-100000@kushnir.kiev.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 7 Jun 1998, Vladimir Kushnir wrote: > > > On Sun, 7 Jun 1998, Vladimir Kushnir wrote: > > Well, I did rebuild XFree port (3.3.2, with 3.3.2-patch1 & 3.3.3-patch2) > with your patches. Thanks a lot, they've made it: > > ~> file /usr/X11R6/bin/XF86_SVGA > /usr/X11R6/bin/XF86_SVGA: ELF 32-bit LSB executable, Intel 80386, version > 1 (FreeBSD), dynamically linked, not stripped <snip> > > Now there's some more problem: modules don't want to load: > pex5.so: Undefined symbol "EventSwapVector" > xie.so: Undefined symbol "isItTimeToYield" > > Both defined as extern, and for the life of mine I can't see what's wrong > with them (isItTimeToYield seems to be merely char, and so on). > Ok, got it. This has nothing to do with dl(open, sym and so on) (anyway, thanks, Amansio!). It seems, that (elf-converted) system doesn't work quite correctly. All these undefined symbols are defined in _static_ libs, and when linked with those libs, program for some reason doesn't suck the symbols in unless an additional "-export-dynamic" flag is given. With it, everything works perfectly all right. BTW, I'm probably just stupid, but would please some kind soul explain 2 things: i) Do we need underscore for elf dlsym? 'Cause I (just out of ignorance) commented out #define PREPEND_UNDERSCORE in xc/programs/Xserver/hw/xfree86/common/xf86Dl.c (now it's init_module instead of _init_module and so on) - and X loads modules without complaint, and ii) Why does conversion to elf give really measurable gain in floating point performance (up to 20-30% according to whetstone). It's _very_ nice, but I wish I understood all this. Regards, Vladimir To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.980608131401.6603C-100000>