Not having mktemp breaks eselect-compiler, and eselect-compiler does NOT depend on mktemp. Additionally, if you install eselect-compiler before mktemp, you can't install mktemp! # FEATURES=-confcache emerge mktemp Calculating dependencies... done! >>> Emerging (1 of 1) sys-apps/mktemp-1.5 to / >>> Creating Manifest for /usr/gentoo-cvs/gentoo-x86/sys-apps/mktemp >>> Unpacking source... >>> Unpacking mktemp-1.5.tar.gz to /var/tmp/portage/mktemp-1.5/work * Applying mktemp-1.5-build.patch ... [ ok ] >>> Source unpacked. >>> Compiling source in /var/tmp/portage/mktemp-1.5/work/mktemp-1.5 ... * econf: updating mktemp-1.5/config.guess with /usr/share/gnuconfig/config.guess * econf: updating mktemp-1.5/config.sub with /usr/share/gnuconfig/config.sub ./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-libc --build=i686-pc-linux-gnu checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking for nroff... ./nroff checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc checking for C compiler default output... configure: error: C compiler cannot create executables See `config.log' for more details. !!! Please attach the following file when filing a report to bugs.gentoo.org: !!! /var/tmp/portage/mktemp-1.5/work/mktemp-1.5/config.log From config.log configure:1587: checking for i686-pc-linux-gnu-gcc configure:1603: found /usr/lib/ccache/bin/i686-pc-linux-gnu-gcc configure:1613: result: i686-pc-linux-gnu-gcc configure:1895: checking for C compiler version configure:1898: i686-pc-linux-gnu-gcc --version </dev/null >&5 /usr/share/eselect//modules/compiler.eselect: line 30: mktemp: command not found /usr/share/eselect//modules/compiler.eselect: line 33: ${tmp}: ambiguous redirect /usr/share/eselect//modules/compiler.eselect: line 35: source: filename argument required source: usage: source filename [arguments] ^[[1;31m!!! Error: ^[[00mFailed to get data on installed profiles. gcc-config error: Could not run/locate "i686-pc-linux-gnu-gcc" configure:1901: $? = 1 configure:1903: i686-pc-linux-gnu-gcc -v </dev/null >&5 /usr/share/eselect//modules/compiler.eselect: line 30: mktemp: command not found /usr/share/eselect//modules/compiler.eselect: line 33: ${tmp}: ambiguous redirect /usr/share/eselect//modules/compiler.eselect: line 35: source: filename argument required source: usage: source filename [arguments] ^[[1;31m!!! Error: ^[[00mFailed to get data on installed profiles. gcc-config error: Could not run/locate "i686-pc-linux-gnu-gcc" configure:1906: $? = 1 configure:1908: i686-pc-linux-gnu-gcc -V </dev/null >&5 /usr/share/eselect//modules/compiler.eselect: line 30: mktemp: command not found /usr/share/eselect//modules/compiler.eselect: line 33: ${tmp}: ambiguous redirect /usr/share/eselect//modules/compiler.eselect: line 35: source: filename argument required source: usage: source filename [arguments] ^[[1;31m!!! Error: ^[[00mFailed to get data on installed profiles. gcc-config error: Could not run/locate "i686-pc-linux-gnu-gcc" configure:1911: $? = 1 configure:1935: checking for C compiler default output configure:1938: i686-pc-linux-gnu-gcc -march=athlon-xp -mcpu=athlon-xp -O3 -pipe conftest.c >&5 /usr/share/eselect//modules/compiler.eselect: line 30: mktemp: command not found /usr/share/eselect//modules/compiler.eselect: line 33: ${tmp}: ambiguous redirect /usr/share/eselect//modules/compiler.eselect: line 35: source: filename argument required source: usage: source filename [arguments] ^[[1;31m!!! Error: ^[[00mFailed to get data on installed profiles. gcc-config error: Could not run/locate "i686-pc-linux-gnu-gcc" configure:1941: $? = 1 configure: failed program was: | #line 1914 "configure" | /* confdefs.h. */ |
This must've been missed by vapier when he broke off the mktemp package...
Created attachment 94860 [details, diff] Remove use of mktemp from eselect module Jeremy, attached patch uses a HERE doc to eliminate the use of temporary files. This means mktemp is no longer required, and it should be a little faster as well since it avoids filesystem access.