Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 31 Jan 2004 12:42:05 +1100
From:      Simon Coggins <simon@uow.edu.au>
To:        "David O'Brien" <obrien@freebsd.org>
Cc:        freebsd-sparc64@freebsd.org
Subject:   Re: Question about cross compiling sparc64 on i386
Message-ID:  <20040131014204.GA37744@uow.edu.au>
In-Reply-To: <20040130160749.GA5544@dragon.nuxi.com>
References:  <20040130123606.GB36245@uow.edu.au> <20040130160749.GA5544@dragon.nuxi.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jan 30, 2004 at 08:07:49AM -0800, David O'Brien wrote:
> On Fri, Jan 30, 2004 at 11:36:06PM +1100, Simon Coggins wrote:
> > Does anyone have a how-to or quick instructions on how to go about
> > cross compiling sparc64 world/kernel on i386. I assumed it would be as
> > easy as cd /usr/src && make TARGET_ARCH=sparc64 ... 
> 
> It is that easy.
>

Good I was hoping it was. I can see the answer to this is that I
shouldn't be building on one machine then installing on another. The
build machine should install the files. That just means I have to do
weird nfs mounts that I didn't want to do. But I'll explain what I'm
doing now.

> > Once it finished  the installkernel on the ultra 5 didn't work becuase
> > it couldn't find some modules it was looking to install. And
> > installworld failed because it didn't build the tools to install (ala
> > install binary).
> 
> Error log please -- we weren't in front of your machine when this
> happened.
> 

My setup:
I have an nfs share /usr/world that contains src,obj,ports
/usr/src is symlinked to /usr/world/src
/usr/obj is symlinked to /usr/world/obj

I have 2 machines like this, Chaotic (800Mhz i386) and Solar (260Mhz
sparc). Here is exactly what I'm doing:

chaotic:/usr/src# make TARGET_ARCH=sparc64 buildworld
This completes without error and the output can be seen here:
http://chaotic.oz.org/other/bsd/buildworld.out.gz (414k gz, 6.3meg txt)

solar:/usr/src# make TARGET_ARCH=sparc64 MAKEOBJDIRPREFIX=/usr/obj/sparc64 installworld

This is where I get the install not found error. I also have to add the
MAKEOBJDIRPREFIX so that it can find the build directory. By default it
looks in /usr/obj/ but when you do TARGET_ARCH=sparc64 on
i386 machine it puts it in /usr/obj/sparc64/ From the looks of the only 
the i386 legacy binaries are compiled (the things in 
/usr/obj/.../src/<platform>/legacy/* so it puts that in the path for 
installing and doesn't work.

Output here:
http://chaotic.oz.org/other/bsd/installworld.out.gz (1k gz, 5k txt)

Anyway there's my error messages..


Regards
Simon

-- 
Simon Coggins (SAGE-AU Member)                Email: simon@uow.edu.au
Network and System Management Officer         Phone: +61-2-4221-3775
Information Technology Systems (ITS)          Mobile: 0408 115861
University of Wollongong, 2522, Australia     Fax:   +61-2-4229-1985



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