I have a chroot Gentoo installation made from the athlon xp stage3. Trying to emerge -uD world, when emergeing openssl, it finds out it is in a 64 bit system, and tries to compile for 64 bit. Setting -m32 in make.conf makes the compilation go a bit further, but then it gasps at some assembler code. Reproducible: Always Steps to Reproduce: 1. 32 bit installation on amd64 hardware 2. emerge =dev-libs/openssl-0.9.7e-r2 3. bummer Actual Results: Compilation failed Expected Results: openssl should compile cleanly Portage 2.0.51.22-r3 (default-linux/x86/2005.1, gcc-3.3.6, glibc-2.3.5-r2, 2.6.12-gentoo-r10 x86_64) ================================================================= System uname: 2.6.12-gentoo-r10 x86_64 AMD Athlon(tm) 64 Processor 3000+ Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5, 2.4.1-r1 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O2 -pipe -mmmx -m3dnow -msse -fomit-frame-pointer -momit-leaf-frame-pointer -ffast-math -fforce-addr -falign-functions=64 -fprefetch-loop-arrays -ftracer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib64/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -O2 -pipe -mmmx -m3dnow -msse -fomit-frame-pointer -momit-leaf-frame-pointer -ffast-math -fforce-addr -falign-functions=64 -fprefetch-loop-arrays -ftracer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.mirrors.easynews.com/linux/gentoo/ ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo http://open-systems.ufl.edu/mirrors/gentoo http://mirror.datapipe.net/gentoo http://gd.tuwien.ac.at/opsys/linux/gentoo/" LDFLAGS="-Wl,-O1 -Wl,--sort-common " MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://portage.cert-id.com.br/portage" USE="x86 3dnow 3dnowext X acl acpi alsa apache2 apm arts avi berkdb bitmap-fonts bzip2 cdparanoia cdr cjk crypt cups curl dba dbase dbus dga directfb dvd dvdread eds emboss encode esd fam firebird flac flash foomaticdb fortran gcj gd gdbm gif gmp gnome gpm gstreamer gtk2 imap imlib innodb interbase jabber java javascript joystick jpeg jpeg2k kde kdeenablefinal kdexdeltas libg++ libwww mad maildir mailwrapper mcal mikmod mmx mmxext motif mozilla mozsvg mp3 mpeg mysql ncurses nls nptl odbc ogg oggvorbis opengl oss pam pcre pda pdflib perl php pic png postgres povray prelink python qt quicktime rdesktop readline samba scanner sdk sdl session soap sockets speex spell sqlite sse ssl subversion svg svga tcltk tcpd theora tidy tiff tokenizer truetype truetype-fonts type1-fonts udev unicode usb utf8 vhosts vorbis wifi win32 win32codecs wmf xine xml2 xmms xorg xscreensaver xsl xv xvid yahoo zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LINGUAS, PORTDIR_OVERLAY
Could it be that the kernel is 64 bit, and even though the chroot is 100% 32 bit the package tries to identify the machine arch by the kernel (and incorrectly assumes that it should compile to the kernel arch)?
Enter the chroot with "linux32 chroot /path /bin/bash" so that uname reports you as using an x86 kernel.