From owner-freebsd-ports@FreeBSD.ORG Mon Feb 28 06:43:45 2011 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5D2CE106564A for ; Mon, 28 Feb 2011 06:43:45 +0000 (UTC) (envelope-from ade@FreeBSD.org) Received: from panix.lovett.com (panix.lovett.com [166.84.7.128]) by mx1.freebsd.org (Postfix) with ESMTP id 361B58FC08 for ; Mon, 28 Feb 2011 06:43:44 +0000 (UTC) Received: from cpe-66-68-128-204.austin.res.rr.com ([66.68.128.204] helo=[172.16.32.150]) by panix.lovett.com with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.73 (FreeBSD)) (envelope-from ) id 1Ptwpc-0001UN-3w for freebsd-ports@freebsd.org; Mon, 28 Feb 2011 06:43:44 +0000 Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1082) From: Ade Lovett In-Reply-To: <20110228014612.GA72748@comcast.net> Date: Mon, 28 Feb 2011 00:43:32 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: References: <20110225094102.GH21668@droso.net> <4D6AB2E6.1000107@missouri.edu> <20110228014612.GA72748@comcast.net> To: FreeBSD Ports X-Mailer: Apple Mail (2.1082) Subject: Re: multiple definition of `__i686.get_pc_thunk.bx' X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Feb 2011 06:43:45 -0000 > On Sun 27 Feb 2011 at 12:24:06 PST Stephen Montgomery-Smith wrote: >> I am the maintainer of the port vis5d+. I just got this email = (copied below) saying that vis5d+ isn't building right now. >>=20 >> The issue seems to be that some reference to __i686.get_pc_thunk.bx = is included twice at some point. This variable seems to be part of an = object file crtbeginS.o that is created by gcc or gcc45, in what seem to = me to be very mysterious conditions. I am rather sure that the issue = has nothing to do with vis5d+, but rather is something to do with either = gcc45, or libtools, neither of which I understand. >>=20 >> Does anyone out there have any idea of what the problem is, or how it = can be solved? >>=20 =46rom a relatively cursory examination, this appears to be a flaw in = the USE_FORTRAN=3Dyes stanza. This will bring in gcc45 as a dependency = but doesn't appear to be setting CXX to g++45 though it does do = CC=3Dgcc45. Possibly the same for LD, though I haven't checked that. With parts of the code being compiled against gcc45, and then an = attempted link with the system compiler (CC/LD), then naturally things = will go south, irrespective of whether libtool is being used. I would hazard a guess that if ya'll added USE_GCC=3D45 to vis5d+'s = Makefile, things will link properly. If someone could test this, that'd = be peachy. If it turns out that this works, then it would be a minor = tweak to bsd.gcc.mk to forcibly set USE_GCC if USE_FORTRAN is also set, = to allow all of the environmental variables to be punched out for = compilation. -aDe