Date: Wed, 31 Aug 2005 11:51:38 -0400 From: Vivek Khera <vivek@khera.org> To: freebsd-amd64 List <freebsd-amd64@freebsd.org> Subject: Re: R_X86_64_32 Message-ID: <3013A3A0-CEC4-4246-A37C-8F96F0A0E10A@khera.org> In-Reply-To: <4314B230.5060905@iki.fi> References: <43143948.50502@blosphere.net> <580A5788-44FD-4F83-A786-D017A6DDB3D8@khera.org> <4314B230.5060905@iki.fi>
next in thread | previous in thread | raw e-mail | index | archive | help
On Aug 30, 2005, at 3:23 PM, Tommi L=E4tti wrote: > I even diff'ed the config.status files from both machines when they =20= > generated them during portinstall. No difference. Anyways, usually =20 > this error occurs only when linking to some library that was a =20 > dependancy as far as I've understood. > it happens any time you try to use a shared library built from some =20 software which has only been tested on i386 architecture... =20 basically, some lazy developer decided that to build a shared library =20= they just take the existing objects and lump them together. on =20 modern architectures like amd64 and sparc, this doesn't work unless =20 those objects are built with -fPIC. basically it is a result of bad software configuration. the easy fix =20= is to just add -fPIC to your CFLAGS for such software. the correct =20 fix is to redo how it builds shared libraries so that -fPIC is only =20 used on those and not the static libraries too. Vivek Khera, Ph.D. +1-301-869-4449 x806
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3013A3A0-CEC4-4246-A37C-8F96F0A0E10A>