Hi All,

I am dipping my toe into cross-compile territory, in order to build i686 
binaries for a 32bit box, which is too old to do its own emerges.  I am using 
an amd64 box which is significantly faster to do all the heavy lifting and 
started applying this page:

https://wiki.gentoo.org/wiki/Embedded_Handbook/General/Creating_a_cross-compiler

which I followed up with:

https://wiki.gentoo.org/wiki/Cross_build_environment

and attempted to build @system:
=========================
# i686-pc-linux-gnu-emerge -uva @system

 * IMPORTANT: 3 news items need reading for repository 'gentoo'.
 * Use eselect news read to view new items.


These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N     ] sys-apps/busybox-1.24.2::gentoo to /usr/i686-pc-linux-gnu/ 
USE="make-symlinks static -debug -ipv6 -livecd -math -mdev -pam -savedconfig (-
selinux) -sep-usr -syslog -systemd" 0 KiB

Total: 1 package (1 new), Size of downloads: 0 KiB

Would you like to merge these packages? [Yes/No] y
 * ARCH is not set... Are you missing the '/usr/i686-pc-linux-
 * gnu/etc/portage/make.profile' symlink? Is the symlink correct? Is your
 * portage tree complete?
===============

As far as I can tell the link is there:

# ls -la /usr/i686-pc-linux-gnu/etc/portage/
total 8
drwxr-xr-x 1 root root   56 Jul 31 19:32 .
drwxr-xr-x 1 root root   20 Jul 31 18:32 ..
-rw-r--r-- 1 root root 1019 Jul 31 19:32 make.conf
lrwxrwxrwx 1 root root   30 Jul 31 17:48 make.profile -> 
/usr/portage/profiles/embedded
drwxr-xr-x 1 root root   32 Jul 31 18:16 profile

and it was created when I ran 'crossdev --stable -v -t i686-pc-linux-gnu'.

My make.conf looks like this:
==============================
# cat /usr/i686-pc-linux-gnu/etc/portage/make.conf 
CHOST=i686-pc-linux-gnu
CBUILD=x86_64-pc-linux-gnu
ARCH=x86

HOSTCC=x86_64-pc-linux-gnu-gcc

ROOT=/usr/${CHOST}/

ACCEPT_KEYWORDS="x86"

USE="${ARCH} -pam"

CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j5"
AUTOCLEAN="yes"
USE="a52 aac aalib acpi apache2 -arts asf avi cdda cddb cdparanoia crypt css 
dri dts dv dvd dvdr dvdread divx -eds encode -esd flac fuse gif gimp gmedia -
gnome -gtk hpijs imlib -java lcms -libav live lzo mjpeg mmx mng modplug 
mozdevelop mp3 mysql ncurses npp nptlonly nsplugin pdf ppds quicktime real 
realmedia rtmp scanner semantic-desktop sse sse2 smp svg theora tiff usb utf8 
vcd vhosts vorbis vram v4l webdav wmf wmp xcomposite xine xinerama xulrunner 
xv xvid xvmc x264 yv12"
FEATURES="-collision-protect sandbox buildpkg noman noinfo nodoc"
# Be sure we dont overwrite pkgs from another repo..
PKGDIR=${ROOT}packages/
PORTAGE_TMPDIR=/var/tmp

ELIBC="glibc"

PKG_CONFIG_PATH="${ROOT}usr/lib/pkgconfig/"
#PORTDIR_OVERLAY="/usr/portage/local/"
============================


What am I missing?  How would/do you go about achieving the same objective?

-- 
Regards,
Mick

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to