From owner-freebsd-questions@FreeBSD.ORG Fri Aug 13 00:50:50 2010 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 61D7310656A3 for ; Fri, 13 Aug 2010 00:50:50 +0000 (UTC) (envelope-from yuri@rawbw.com) Received: from shell0.rawbw.com (shell0.rawbw.com [198.144.192.45]) by mx1.freebsd.org (Postfix) with ESMTP id 501548FC1F for ; Fri, 13 Aug 2010 00:50:49 +0000 (UTC) Received: from eagle.syrec.org (stunnel@localhost [127.0.0.1]) (authenticated bits=0) by shell0.rawbw.com (8.14.4/8.14.4) with ESMTP id o7D0onaX038116 for ; Thu, 12 Aug 2010 17:50:49 -0700 (PDT) (envelope-from yuri@rawbw.com) Message-ID: <4C6496E9.4000307@rawbw.com> Date: Thu, 12 Aug 2010 17:50:49 -0700 From: Yuri User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.1.10) Gecko/20100630 Thunderbird/3.0.5 MIME-Version: 1.0 To: freebsd-questions@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Is there a way to rebuild 32-bit libraries under amd64? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Aug 2010 00:50:50 -0000 I have 8.0-STABLE amd64 machine, and I need to run some 32-bit FreeBSD process which runs fine on 8.0-STABLE i386. So I copied all shared libs needed by it from i386 into there respective locations on amd64, but under lib32/ folder. libexecinfo.so.1 => /usr/local/lib32/libexecinfo.so.1 (0x289ca000) libffi.so.5 => /usr/local/lib32/libffi.so.5 (0x289d5000) libstdc++.so.6 => /usr/local/lib32/libstdc++.so.6 (0x289da000) libm.so.5 => /usr/lib32/libm.so.5 (0x28ac4000) libgcc_s.so.1 => /usr/local/gcc/4.5.0-32bit/lib/libgcc_s.so.1 (0x28add000) libthr.so.3 => /usr/lib32/libthr.so.3 (0x28ae9000) libc.so.7 => /usr/lib32/libc.so.7 (0x28afe000) But the process crashes. After debugging I found that regexec returns result different from what it returns on i386 with the same input. So my question is: is there a way to rebuild for example /usr/lib32/libc.so.7 and /usr/lib32/libthr.so.3 on amd64? Or what may cause such incompatibility? Yuri