Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Nov 2005 10:04:20 -0700
From:      Greg Lewis <glewis@eyesbeyond.com>
To:        Andreas Krebs <akrebs@chronolabs.de>
Cc:        freebsd-emulation@freebsd.org, freebsd-java@freebsd.org
Subject:   Re: JDK15 installation problem  SOLVED
Message-ID:  <20051115170420.GA87350@misty.eyesbeyond.com>
In-Reply-To: <437A0D59.6000507@chronolabs.de>
References:  <437A028F.3090404@chronolabs.de> <20051115160827.GA86828@misty.eyesbeyond.com> <437A0D59.6000507@chronolabs.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Nov 15, 2005 at 05:31:21PM +0100, Andreas Krebs wrote:
> Greg Lewis wrote:
> >On Tue, Nov 15, 2005 at 04:45:19PM +0100, Andreas Krebs wrote:
> >  
> >>>So, I wonder what is causing ${ARCH} to be wrong when we try installing 
> >>>the
> >>>Linux emulation package?
> >>>      
> >>The Makefile in linux_base-8 sets the ARCH back to i386, this setting is 
> >>probably used in all following installs (just guessing here)
> >>
> >>.if (${ARCH} == "amd64")
> >>LATEST_LINK:=           ${LATEST_LINK:C/linux/linux32/}
> >>ARCH=                   i386
> >>FALLBACK_ELF_MIB=       kern.elf32.fallback_brand
> >>RPMFLAGS+=              --noscripts
> >>.else
> >>    
> >
> >Exactly.  So why is the install of linux_base-8 looking for an RPM with
> >amd64 as the architecture then?  That is exactly what the above section
> >of the Makefile is overriding.
> From my understanding the linux emulation always uses i386 RPMs, since 
> there is no 64 bit support for the emulation yet. Why the RPMs have the 
> $ARCH in their name I don't know since it will always be i386. My guess 
> would be that it's designed for future use when 64bit Linux emulation 
> becomes available, but I'm only guessing here, but the port maintainer 
> should be able to shed some light on this.

Correct.  Only i386 Linux emulation is offered on the amd64 architecture
at this point.  The RPMs have ${ARCH} in their name to permit other
architectures to potentially be supported (e.g. linux_base supports
both i386 and alpha).

However, you're missing the point :).  Go and read the original post in
the thread:

http://docs.freebsd.org/cgi/getmsg.cgi?fetch=40758+0+archive/2005/freebsd-java/20051113.freebsd-java

The question is why is the port trying to fetch

glibc-common-2.3.2-4.80.8.amd64.rpm  
                          ^^^^^

?

As you have mentioned, linux_base-8 deliberately sets ${ARCH} to i386
on amd64 and the RPM names all include ${ARCH}.  So, why, when pulled in
as a dependency during the JDK build, does it try and fetch an RPM with
amd64 as ${ARCH} when that should basically be impossible?

This isn't the first report like this either, there have been quite a
few and there is even a PR open regarding it.

-- 
Greg Lewis                          Email   : glewis@eyesbeyond.com
Eyes Beyond                         Web     : http://www.eyesbeyond.com
Information Technology              FreeBSD : glewis@FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051115170420.GA87350>