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
signature.asc
Description: This is a digitally signed message part.