Gentoo Archives: gentoo-amd64

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-amd64@l.g.o
Subject: [gentoo-amd64] Re: MAKEOPTS="-j3" and dual opteron system
Date: Wed, 08 Mar 2006 12:08:40
In Reply to: [gentoo-amd64] MAKEOPTS="-j3" and dual opteron system by Hans-Gunther Borrmann
Hans-Gunther Borrmann posted
<200603081035.15013.hans-gunther.borrmann@×××××××××××××××.de>, excerpted
below,  on Wed, 08 Mar 2006 10:35:14 +0100:

> I tried to "emerge --oneshot glibc" on a dual opteron system with > "MAKEOPTS="-j3" in make.conf. The emerge began several times to loop at > different places. The looping program always was "sh". I could successfully > emerge glibc after commenting out my MAKEOPTS setting in make.conf. What are > the experiences with setting MAKEOPTS on smp servers?
I'm running a dual Opteron (242) here, and routinely run MAKEOPTS="-j6 -l6" here, plus sometimes run multiple parallel emerges (using emerge -tp first to see what the dependencies are, then emerge -a to verify that the same dependency isn't in both). As I'm running ~amd64, plus running way out front with still-masked gccs (now gcc-4.0.2-rX and gcc-4.1.0), which sometime last year (with gcc-4.0.0) required still experimental glibcs if I wanted to compile themm with the new gcc, I tend to do more merging of everything, including glibc, than most, and IDR ever having that sort of issue. Occasionally, there's an ebuild that has parallel job issues, but they tend to be pretty rare, because as they are found and bugged, the ebuild will be adjusted to filter out the -jX and force serial compilation jobs. In fact, a quick: "grep MAKEOPTS /p/sys-libs/glibc/*|grep j1" returns a huge number of hits, multiple per ebuild, where serial compilation is already forced by the various glibc ebuilds. Assuming you didn't manually filter all those forced -j1 calls, all I can say is perhaps another one or more need added. They apparently haven't been triggered for most of us or it'd already be forced, but maybe your machine just happens to trigger it in a different area. <shrug> Either that or there's something strange going on with your bash or make or the like and it's filtering the wrong thing. What glibc are you attempting to merge, what are your bash, portage, gcc, and make versions, and where exactly is the error? If you know bash scripting well enough to follow what the ebuild is doing, it shouldn't be hard to verify whether the problem make calls are forcing -j1 or not (some in the glibc ebuilds do, some don't). Also note that MAKEOPTS and MAKE_OPTS are two entirely different vars. There's a note in the xorg ebuilds mentioning that some users had set the _ version instead of the run-together version, and it messed things up. The xorg ebuilds have a preemptive fix for the problem that the glibc ebuilds are missing. If you mistakenly set MAKE_OPTS instead of MAKEOPTS... -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman in -- gentoo-amd64@g.o mailing list


Subject Author
Re: [gentoo-amd64] Re: MAKEOPTS="-j3" and dual opteron system Hans-Gunther Borrmann <hans-gunther.borrmann@×××××××××××××××.de>
Re: [gentoo-amd64] Re: MAKEOPTS="-j3" and dual opteron system Hans-Gunther Borrmann <hans-gunther.borrmann@×××××××××××××××.de>