Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 198401 - Request update on documentation for setting up an emul32-bit chroot
Summary: Request update on documentation for setting up an emul32-bit chroot
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
URL: http://gentoo.org
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-07 22:01 UTC by jon R-B
Modified: 2007-11-07 23:08 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description jon R-B 2007-11-07 22:01:43 UTC
Since the emul-x86 libs are not being updated I am trying to setup my own emul32bit chroot to roll my own as to instructions here:

http://www.gentoo.org/proj/en/base/amd64/emul/index.xml

HOWEVER they do not work.

binutils is setup as:
binutils-config -l
 [1] i686-pc-linux-gnu-2.18 *


gcc is setup as:


gcc-config -l
 [1] x86_64-pc-linux-gnu-4.1.1

Now emerging gcc fails, but that is expected to fail. Busybox however...

>>> Compiling source in /var/tmp/portage/sys-apps/busybox-1.6.1/work/busybox-1.6.1 ...
  SPLIT   include/autoconf.h -> include/config/*
  GEN     include/bbconfigopts.h
/var/tmp/portage/sys-apps/busybox-1.6.1/work/busybox-1.6.1/scripts/gcc-version.sh: line 11: i686-pc-linux-gnu-gcc: command not found
  HOSTCC  applets/usage
  GEN     include/usage_compressed.h
  CC      applets/applets.o
/bin/sh: i686-pc-linux-gnu-gcc: command not found
make[1]: *** [applets/applets.o] Error 127
make: *** [applets] Error 2
 * 
 * ERROR: sys-apps/busybox-1.6.1 failed.
 * Call stack:
 *              ebuild.sh, line 1695:  Called dyn_compile
 *              ebuild.sh, line 1033:  Called qa_call 'src_compile'
 *              ebuild.sh, line   44:  Called src_compile
 *   busybox-1.6.1.ebuild, line  150:  Called die
 * The specific snippet of code:
 *      emake busybox || die "build failed"
 *  The die message:
 *   build failed
 * 
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/sys-apps/busybox-1.6.1/temp/build.log'.


and since busybox emerge happens quite early in the emerge -e world 

emerge -e world -p

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

Calculating world dependencies... done!
[ebuild   R   ] virtual/libintl-0  
[ebuild   R   ] sys-libs/zlib-1.2.3-r1  
[ebuild   R   ] sys-devel/gnuconfig-20070118  
[ebuild   R   ] virtual/libiconv-0  
[ebuild   R   ] dev-libs/expat-2.0.1  
[ebuild   R   ] dev-util/pkgconfig-0.21-r1  
[ebuild   R   ] app-misc/pax-utils-0.1.16  
[ebuild   R   ] sys-devel/gcc-config-1.3.16  
[ebuild   R   ] dev-libs/gmp-4.2.1-r1  
[ebuild   R   ] sys-devel/autoconf-wrapper-4-r3  
[ebuild   R   ] sys-devel/automake-wrapper-3-r1  
[ebuild   R   ] app-crypt/hashalot-0.3-r2  
[ebuild   R   ] sys-apps/setarch-2.0  
[ebuild   R   ] dev-util/unifdef-1.20  
[ebuild   R   ] sys-apps/sandbox-1.2.18.1-r2  
[ebuild   R   ] sys-libs/pwdb-0.62  
[ebuild   R   ] sys-apps/tcp-wrappers-7.6-r8  
[ebuild   R   ] sys-libs/timezone-data-2007g  
[ebuild  N    ] sys-apps/busybox-1.6.1  USE="-debug -make-symlinks -savedconfig (-selinux) -static" 
[ebuild   R   ] sys-devel/patch-2.5.9  USE="-build*" 
[ebuild     U ] app-arch/bzip2-1.0.4 [1.0.3-r6] 
[ebuild  N    ] app-arch/cpio-2.9-r1  USE="nls" 
[ebuild  N    ] sys-apps/hdparm-7.7  
[ebuild     U ] sys-devel/gettext-0.16.1-r1 [0.16.1] 
[ebuild     U ] sys-kernel/linux-headers-2.6.22-r2 [2.6.17-r2] 
[ebuild  N    ] dev-libs/libpcre-7.3-r1  USE="unicode -doc" 
[ebuild   R   ] dev-libs/mpfr-2.2.1_p5  
[ebuild     U ] sys-devel/m4-1.4.10 [1.4.7] USE="nls* -examples%" 
[ebuild   R   ] sys-apps/sed-4.1.5  USE="nls*" 
[ebuild  N    ] sys-libs/com_err-1.39  USE="nls" 
[ebuild     U ] sys-apps/sysvinit-2.86-r8 [2.86-r6] USE="(-ibm)" 
[ebuild     U ] sys-apps/findutils-4.3.8-r1 [4.3.2-r1] USE="nls*" 
[ebuild   R   ] dev-libs/popt-1.10.7  USE="nls*" 
[ebuild     U ] sys-apps/grep-2.5.1a-r1 [2.5.1-r8] USE="nls* pcre%*" 
[ebuild     U ] app-arch/gzip-1.3.12 [1.3.5-r10] USE="nls*" 
[ebuild     U ] sys-apps/net-tools-1.60-r13 [1.60-r12] USE="nls*" 
[ebuild  N    ] sys-apps/kbd-1.13-r1  USE="nls" 
[ebuild  N    ] net-misc/iputils-20070202  USE="ipv6 -doc -static" 
[ebuild     U ] sys-devel/flex-2.5.33-r3 [2.5.33-r2] USE="nls*" 
[ebuild     U ] sys-apps/gawk-3.1.5-r5 [3.1.5-r2] USE="nls*" 
[ebuild     U ] app-arch/tar-1.18-r2 [1.16-r2] USE="nls*" 
[ebuild   R   ] sys-devel/make-3.81  USE="nls*" 
[ebuild     U ] sys-devel/binutils-config-1.9-r4 [1.9-r3] 
[ebuild  N    ] sys-libs/ss-1.39  USE="nls" 
[ebuild     U ] net-misc/rsync-2.6.9-r3 [2.6.9-r1] USE="ipv6*" 
[ebuild   R   ] sys-devel/bison-2.3  
[ebuild   R   ] virtual/init-0  
[ebuild   R   ] sys-devel/binutils-2.18-r1  
[ebuild  N    ] sys-libs/db-4.5.20_p2  USE="-bootstrap -doc -java -nocxx -tcl -test" 
[ebuild  N    ] sys-libs/gdbm-1.8.3-r3  USE="berkdb" 
[ebuild   R   ] sys-devel/libperl-5.8.8-r1  USE="berkdb* gdbm*" 
[ebuild  N    ] app-admin/python-updater-0.2  
[ebuild     U ] sys-devel/autoconf-2.61-r1 [2.61] 
[ebuild   R   ] sys-apps/texinfo-4.8-r5  
[ebuild  N    ] sys-fs/e2fsprogs-1.39-r2  USE="nls -static" 
[ebuild  N    ] sys-apps/which-2.16  
[ebuild     U ] app-shells/bash-3.2_p17 [3.1_p17] USE="nls*" 
[ebuild   R   ] sys-apps/portage-2.1.3.16  
[ebuild     U ] dev-python/pycrypto-2.0.1-r6 [2.0.1-r5] USE="bindist*" 
[ebuild   R   ] app-admin/perl-cleaner-1.04.3  
[ebuild   R   ] app-misc/ca-certificates-20070303-r1  
[ebuild   R   ] dev-libs/openssl-0.9.8f  
[ebuild   R   ] net-misc/wget-1.10.2  USE="ipv6* nls* ssl* -build*" 
[ebuild  N    ] sys-libs/readline-5.2_p7  
[ebuild     U ] dev-lang/python-2.4.4-r6 [2.4.3-r4] USE="berkdb* gdbm* ipv6* ncurses* readline* ssl* -build* -examples% -nothreads%" 
[ebuild  N    ] sys-libs/cracklib-2.8.10  USE="nls python" 
[ebuild   R   ] dev-python/python-fchksum-1.7.1  
[ebuild     U ] sys-apps/file-4.21-r1 [4.20-r1] USE="python*" 
[ebuild     U ] sys-apps/coreutils-6.9-r1 [6.4] USE="nls* -xattr%" 
[ebuild  N    ] sys-libs/pam-0.99.8.1-r1  USE="cracklib nls -audit (-selinux) -vim-syntax" 
[ebuild  N    ] sys-apps/groff-1.19.2-r1  USE="-X -cjk" 
[ebuild  N    ] sys-apps/man-1.6e-r3  USE="nls" 
[ebuild  N    ] sys-apps/man-pages-2.66  USE="nls" 
[ebuild     U ] sys-apps/diffutils-2.8.7-r2 [2.8.7-r1] USE="nls*" 
[ebuild  N    ] sys-libs/gpm-1.20.1-r5  USE="(-selinux)" 
[ebuild     U ] sys-libs/ncurses-5.6-r1 [5.5-r3] USE="gpm* -build*" 
[ebuild     U ] app-editors/nano-2.0.6 [2.0.2] USE="ncurses* nls*" 
[ebuild  N    ] sys-process/procps-3.2.7  USE="(-n32)" 
[ebuild     U ] sys-apps/less-406 [394] 
[ebuild  N    ] virtual/editor-0  
[ebuild     U ] sys-devel/gcc-4.1.2 [4.1.1-r3] USE="fortran* mudflap* -bootstrap* -d%" 
[ebuild     U ] sys-libs/glibc-2.6.1 [2.5] USE="-debug%" 
[ebuild  N    ] sys-apps/shadow-4.0.18.1-r1  USE="cracklib nls pam -nousuid (-selinux) -skey" 
[ebuild  N    ] sys-apps/module-init-tools-3.2.2-r3  USE="-old-linux" 
[ebuild   R   ] dev-lang/perl-5.8.8-r2  USE="berkdb* gdbm* -build*" 
[ebuild  N    ] perl-core/PodParser-1.35  
[ebuild  N    ] perl-core/Test-Harness-2.64  
[ebuild  N    ] dev-perl/Locale-gettext-1.05  
[ebuild  N    ] sys-apps/util-linux-2.12r-r8  USE="crypt nls perl -old-crypt (-selinux) -static" 
[ebuild  N    ] sys-apps/help2man-1.36.4  USE="nls" 
[ebuild   R   ] sys-devel/automake-1.10  
[ebuild     U ] sys-devel/libtool-1.5.24 [1.5.22] USE="-vanilla%" 
[ebuild  N    ] sys-process/psmisc-22.5-r2  USE="ipv6 nls -X (-selinux)" 
[ebuild  N    ] net-misc/openssh-4.7_p1-r1  USE="pam tcpd -X -X509 -chroot -hpn -kerberos -ldap -libedit (-selinux) -skey -smartcard -static" 
[ebuild     U ] sys-apps/debianutils-2.17.5 [2.15-r1] 
[ebuild  N    ] sys-apps/mktemp-1.5  
[ebuild     U ] sys-apps/baselayout-1.12.9-r2 [1.12.9] USE="-bootstrap*" 
[ebuild  N    ] sys-fs/udev-115-r1  USE="(-selinux)" 

next to nothing for the chroot is created.
Some steps are missing 


Reproducible: Always
Comment 1 jon R-B 2007-11-07 22:06:03 UTC
--EDIT--
this isn't one of those cases that manually emerge binutils fixes
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-11-07 22:12:30 UTC
See, this documentation is for *amd64 developers*; not for end users. What kind of update are you requesting here? And why do you need a rescue shell in a chroot intended for creating emul-* stuff?
 
Comment 3 jon R-B 2007-11-07 22:27:27 UTC
"See, this documentation is for *amd64 developers*; not for end users. What kind
of update are you requesting here? "

That may be the case, but since I was pointed there as a method to roll your own emul-x86 libs these are the only docu's that exist
Update requested? Well what if I was thinking of becoming an amd64 dev/tester the documentation are not valid anymore

"And why do you need a rescue shell in a
chroot intended for creating emul-* stuff?" 
My thought exactly BUT since the instructions say todo an "emerge -e world" THIS pulls in busybox. Thus either something needs to be changed in the profile OR the documentation needs to be updated as requested such that such a step is refined cause it is obviouly 1) not needed, 2) broken  
Comment 4 Mike Doty (RETIRED) gentoo-dev 2007-11-07 23:08:03 UTC
Unfortunately the tree is not in good enough shape where I could write instructions and have them be valid.  The instructions posted are really just guidelines of how the process works, not steps to blindly follow.  The problem you're having with busybox is because their build systems calls the full compiler name instead of simply using gcc.

I wish I could offer more advice, but this is one of those cases where you need to have a very in-depth knowledge of portage and all the build systems used out there.

As for the emul packages being out of date on amd64, yes we are aware of that.  I hope to have a refresh of all the packages this weekend.