Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 08 Jun 2014 21:01:18 -0700
From:      Peter Wemm <peter@wemm.org>
To:        freebsd-stable@freebsd.org
Cc:        Chris Ross <cross+freebsd@distal.com>
Subject:   Re: Cross-building FreeBSD core...
Message-ID:  <2158607.RZmBJ56eyy@overcee.wemm.org>
In-Reply-To: <FB1DB8CA-F1D1-4339-B238-F08704EDDA75@distal.com>
References:  <FB1DB8CA-F1D1-4339-B238-F08704EDDA75@distal.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 08 June 2014 23:05:25 Chris Ross wrote:
>   So, I was investigating the notion of cross-building FreeBSD stable/10. 
> Specifically, I wanted to try to build a full amd64 buildworld and
> buildkernel on a sparc64.
> 
>   I found https://wiki.freebsd.org/A_Brief_Guide_To_Cross_Compiling_FreeBSD
> which I knew was a little old, but tried it.  It failed in "stage 4.2:
> building libraries", after quite a long time, eventually failing in:
> 
> ===> lib/ncurses/ncurses (obj,depend,all,install)
> [....]
> cc  -o make_keys -O2 -pipe  -I.
> -I/home/cross/obj.amd64/usr/src/lib/ncurses/ncurses/../ncurses
> -I/usr/src/lib/ncurses/ncurses/../ncurses
> -I/usr/src/lib/ncurses/ncurses/../ncurses
> -I/usr/src/lib/ncurses/ncurses/../../../contrib/ncurses/include
> -I/usr/src/lib/ncurses/ncurses/../../../contrib/ncurses/ncurses -Wall
> -DNDEBUG -DHAVE_CONFIG_H -DFREEBSD_NATIVE -DTERMIOS -std=gnu99
> -Qunused-arguments  -fstack-protector -Wsystem-headers -Werror -Wall
> -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
> -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized -Wno-pointer-sign
> -Wno-empty-body -Wno-string-plus-int -Wno-tautological-compare
> -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function
> -Wno-enum-conversion
> /usr/src/lib/ncurses/ncurses/../../../contrib/ncurses/ncurses/tinfo/make_ke
> ys.c ./make_keys keys.list > init_keytry.h
> ./make_keys: Exec format error
> *** Error code 126
> 
> 
>   Is this a bug that needs to be fixed in the build system, or something I
> did wrong to perform the build?
> 
>   I effectively did:
> 
> make buildworld TARGET=amd64 TARGET_ARCH=amd64
> MAKEOBJDIRPREFIX=/home/cross/obj.amd64

I don't know if it's still the case, but MAKEOBJDIRPREFIX used to have to be 
set before calling make, ie something more like:
env MAKEOBJDIRPREFIX=/home/cross/obj.amd64 make buildworld TARGET=amd64 
TARGET_ARCH=amd64

-- 
Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV
UTF-8: for when a ' or ... just won\342\200\231t do\342\200\246



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