From owner-freebsd-amd64@FreeBSD.ORG Wed Aug 31 15:51:43 2005 Return-Path: X-Original-To: freebsd-amd64@freebsd.org Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3E14B16A41F for ; Wed, 31 Aug 2005 15:51:43 +0000 (GMT) (envelope-from vivek@khera.org) Received: from yertle.kcilink.com (yertle.kcilink.com [65.205.34.180]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF40243D45 for ; Wed, 31 Aug 2005 15:51:40 +0000 (GMT) (envelope-from vivek@khera.org) Received: from [192.168.7.103] (host-103.int.kcilink.com [192.168.7.103]) by yertle.kcilink.com (Postfix) with ESMTP id 2C745B80F for ; Wed, 31 Aug 2005 11:51:39 -0400 (EDT) Mime-Version: 1.0 (Apple Message framework v734) In-Reply-To: <4314B230.5060905@iki.fi> References: <43143948.50502@blosphere.net> <580A5788-44FD-4F83-A786-D017A6DDB3D8@khera.org> <4314B230.5060905@iki.fi> Content-Type: text/plain; charset=ISO-8859-1; delsp=yes; format=flowed Message-Id: <3013A3A0-CEC4-4246-A37C-8F96F0A0E10A@khera.org> Content-Transfer-Encoding: quoted-printable From: Vivek Khera Date: Wed, 31 Aug 2005 11:51:38 -0400 To: freebsd-amd64 List X-Mailer: Apple Mail (2.734) Subject: Re: R_X86_64_32 X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Aug 2005 15:51:43 -0000 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