I wanted to use dmraid to install gentoo onto an EMT64-system. Emerging within the live-system of the sabayon-AMD64-DVD didn't work with the same error mentioned below. So I copied a static version from my 32bit-notebook and set up the fakeraid. After installing a 2006.1-stage3 it still didn't work within the chroot. So I decided to first update the whole system to ~amd64 in case there are problems with the autotools. But that didn't help. Reproducible: Always Steps to Reproduce: 1. install 2006.1-AMD64 in a chroot and update it to ~amd64 2. unmask dmraid 3. emerge dmraid Actual Results: [...] checking for getopt.h... yes configure: creating ./config.status config.status: creating include/Makefile config.status: creating lib/Makefile config.status: creating man/Makefile config.status: creating tools/Makefile config.status: creating tools/version.h config.status: creating Makefile config.status: creating make.tmpl tools/dmraid.c:12:27: error: dmraid/dmraid.h: No such file or directory In file included from tools/dmraid.c:13: tools/commands.h:11:32: error: dmraid/lib_context.h: No such file or directory In file included from tools/dmraid.c:13: tools/commands.h:74: warning: 'struct lib_context' declared inside parameter list tools/commands.h:74: warning: its scope is only this definition or declaration, which is probably not what you want tools/commands.h:106: warning: 'struct lib_context' declared inside parameter list tools/commands.h:109: warning: 'struct lib_context' declared inside parameter list tools/commands.h:110: warning: 'struct lib_context' declared inside parameter list In file included from tools/dmraid.c:14: tools/toollib.h:13: warning: 'struct lib_context' declared inside parameter list tools/toollib.h:14: warning: 'struct lib_context' declared inside parameter list tools/toollib.h:15: warning: 'struct lib_context' declared inside parameter list tools/toollib.h:18: error: expected declaration specifiers or '...' before 'size_t' tools/toollib.h:18: warning: 'struct lib_context' declared inside parameter list tools/toollib.h:19: warning: 'struct lib_context' declared inside parameter list tools/dmraid.c: In function 'main': tools/dmraid.c:23: warning: implicit declaration of function 'libdmraid_init' tools/dmraid.c:23: warning: assignment makes pointer from integer without a cast tools/dmraid.c:34: warning: passing argument 1 of 'handle_args' from incompatible pointer type tools/dmraid.c:35: warning: implicit declaration of function 'init_locking' tools/dmraid.c:36: warning: passing argument 1 of 'perform' from incompatible pointer type tools/dmraid.c:39: warning: implicit declaration of function 'libdmraid_exit' tools/dmraid.c:43: warning: implicit declaration of function 'exit' tools/dmraid.c:43: warning: incompatible implicit declaration of built-in function 'exit' tools/dmraid.c:43: error: 'EXIT_SUCCESS' undeclared (first use in this function) tools/dmraid.c:43: error: (Each undeclared identifier is reported only once tools/dmraid.c:43: error: for each function it appears in.) tools/dmraid.c:43: error: 'EXIT_FAILURE' undeclared (first use in this function) tools/dmraid.c:44: warning: control reaches end of non-void function make: *** [tools/dmraid] Error 1 make: *** Waiting for unfinished jobs.... format/ataraid/asr.c:516: warning: 'find_spare' defined but not used ar: creating ../lib/libdmraid.a ../lib/libdmraid.a ../lib/libdmraid.a !!! ERROR: sys-fs/dmraid-1.0.0_rc13 failed. Call stack: ebuild.sh, line 1611: Called dyn_compile ebuild.sh, line 968: Called qa_call 'src_compile' environment, line 3959: Called src_compile dmraid-1.0.0_rc13.ebuild, line 48: Called die !!! emake 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-fs/dmraid-1.0.0_rc13/temp/build.log'. Expected Results: A working dmraid. I know dmraid is masked. But the problem in this case is not dmraid itself. I changed into the work-directory in /var after the emerge and was able to simply call make and get the desired binary. I now copied the static file into /usr/local. So there's some easy workaround. (chroot) sabayonx86-64 ~ # emerge --info Portage 2.1.2-r5 (default-linux/amd64/2006.1, gcc-4.1.1, glibc-2.5-r0, 2.6.19-gentoo-r4 x86_64) ================================================================= System uname: 2.6.19-gentoo-r4 x86_64 Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz Gentoo Base System release 1.12.9 Timestamp of tree: Tue, 30 Jan 2007 02:20:01 +0000 dev-java/java-config: 1.3.7, 2.0.31-r3 dev-lang/python: 2.4.4 dev-python/pycrypto: 2.0.1-r5 sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.14 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.19.2-r2 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=x86-64 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/NX/etc /usr/NX/home /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/terminfo" CXXFLAGS="-O2 -march=x86-64 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks metadata-transfer parallel-fetch sandbox sfperms strict" GENTOO_MIRRORS="ftp://pandemonium.tiscali.de/pub/gentoo/" LANG="en_US" LC_ALL="en_US" LINGUAS="de" MAKEOPTS="-s -j3" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi adns alsa amd64 apache2 arts bash-completion berkdb bitmap-fonts bluetooth bzip2 cairo cddb cdparanoia cdr clamav cli cracklib crypt cups curl curlwrappers dbus dlloader dri dvb dvd dvdr dvdread encode exif fam fastcgi ffmpeg firefox flac foomaticdb fortran ftp gd gdbm gif glut gmp gnutls gphoto2 gpm gtk gtk2 hal iconv idn ieee1394 imagemagick imap imlib innodb ipod ipv6 isdnlog jabber jack java javascript jikes jpeg jpeg2k junit kde kdeenablefinal kdehiddenvisibility lcms ldap libg++ lm_sensors mad maildir mailwrapper matroska memlimit midi mime mng mp3 mpeg mplayer mysql mysqli ncurses nptl nptlonly nsplugin offensive ogg openal opengl pam pcre pda pdf perl php png posix ppds pppd prelude python qt3 qt4 quicktime rdesktop readline recode reflection ruby samba sasl scanner sdl session skey slp smartcard sockets socks5 speex spell spl sqlite ssl startup-notification svg tcpd tetex theora threads tidy tiff tokenizer truetype truetype-fonts type1-fonts udev unicode usb vhosts vim-syntax vorbis wifi wmf x264 xine xinerama xml xorg xosd xpm xsl xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" FOO2ZJS_DEVICES="hp2600n" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Try: MAKEOPTS="-j1" emerge dmraid
Indeed, using other MAKEOPTS works. Thank you very much for this hint! My original opts were "-s -j3". Now using "-j3" works too. Using "-s -j1" throws other failures... I guess I didn't understand what "-s" stands for... :-( I'll just push it out of my make.conf.
*** Bug 145415 has been marked as a duplicate of this bug. ***
There's a version-bump of dmraid in Sunrise, which I've successfully tested on current stable AMD64 both with and without MAKEOPTS="-s", as well as when using an ~amd64 version of sys-fs/device-mapper. It should be commited to portage soon, but in the meantime it can be accessed here: http://overlays.gentoo.org/proj/sunrise/browser/portage-review/sys-fs/dmraid
Any word -- does -rc14 fix this bug?
I'll do another build now and report back soon.
Alan: Any word?
Yes, I mentioned it on bug 188273. Essentially no it doesn't work. dmraid needs building with MAKEOPTS="-j1"
this bug should be closed, _rc13 isn't in the tree anymore and there are no reports of this issue in newer versions.