Following the Gentoo Handbook, in Chapter 6 you are told to modify the USE flags to suit your needs. Later on, you are told to emerge --emptytree system Setting some combinations of flags in USE pulls in alsa-driver as a dependency which does not compile without a configured kernel (which happens in chapter 7) so emerge system fails. Setting X also pulls in xorg-x11 (which is HUGE), I have also seen kde libs being pulled. IMO, at least a warning is appropriate, or perhaps a paragraph in the emerge system-section that some USE flags should be disabled before starting the merge. Reproducible: Always Steps to Reproduce: 1.Follow the handbook 2. 3. Actual Results: (i.e.) alsa-driver fails to compile Expected Results: A running Gentoo system :-)
Could you please post exact combination of USE flags? BTW, hb-install-system.xml does talk about "X" USE flag...
USE="3dfx acl -alsa avi bash-completion crypt cups dbus divx4linux dvd -gdbm gnome gtk gtk2 gtkhtml hal icq imap java javascript -kde libwww lm_sensors maildir mime mozilla mp3 mpeg ogg pda -perl php png -qt quicktime samba -svga tetex usb vorbis win32codecs wxwindows xine xmms xosd xvid" This is not my system btw...
Wait a sec... It used to be USE="... alsa ..."
Did you note this after some critical thinking while looking at the handbook or were you actually working on a computer with the "alsa" and "X" tags? I can see your point there, and here's my idea of an extra sentence or so: "Warning: For users who wish for a stage1 or stage2 installation, settting certain USE variables such as "alsa" can cause errors in the completion of the command "emerge --emptytree system". Why? Well, the USE variables such as "alsa" may require a kernel which can not be compiled until after you finish adding basic utilities to the system."
No, I wasn't, but a friend of mine was, and he called me for help. It bet me all along since I sent him a tarred version of my portage tree. Then I did the critical thinking when he send me emerge -pve system. The sentence looks good to me. Add another one like: "You might want to keep your USE flags to a minimum here and re-set them after doing emerge --emptytree system. You can always run the command emerge --newuse system to pick up the new use flags later." Probably pick it up on the emerge system part like this "Remember that setting some USE flags may cause problems like failing compiles or big dependencies being pulled in."
> "You might want to keep your USE flags to a minimum here and re-set them after > doing emerge --emptytree system. You can always run the command emerge --newuse > system to pick up the new use flags later." > Probably pick it up on the emerge system part like this > "Remember that setting some USE flags may cause problems like failing compiles > or big dependencies being pulled in." "Warning: For users who intend to install a stage1 or stage2 system, it is advised to keep the USE flags to a minimum and not set their full USE flags until after the command "emerge --emptytree system". The user, then, any time after the command, can add their USE flags to make.conf and then run "emerge --newuse system" to have the new USE flags known to the local Portage system. Stage1 or stage2 users are advises to keep USE flags to a minimum before running "emerge --emptytree system" because some USE flags can cause big dependencies to be pulled in, lengthening emerge time or can cause compilation failures."
Created attachment 60218 [details, diff] Attchmnt addes proposed pgraph on USE flag setting warning for S1/S2 users
(In reply to comment #0) > Setting some combinations of flags in USE pulls in alsa-driver as a dependency > which does not compile without a configured kernel (which happens in chapter 7) > so emerge system fails. This should not happen. > Setting X also pulls in xorg-x11 (which is HUGE), I have also seen kde libs > being pulled. X does get pulled in at stage 2 IIRC.
(In reply to comment #0) > Setting some combinations of flags in USE pulls in alsa-driver as a dependency > which does not compile without a configured kernel (which happens in chapter 7) > so emerge system fails. Which version? 2005.0 I guess. Because in 2004.3 and before, I've set *all* my USE flags (stage 1 install) and I've had no issues like this...
Shyam: What type of kernel did you use with 2004.3? I think a 2.4 kernel would require more work, so therefore allowing you to --emptytree system and only having alsa-lib be installed instead of the kernel driver, alsa-driver.
(In reply to comment #10) > What type of kernel did you use with 2004.3? I think a 2.4 kernel would require > more work, so therefore allowing you to --emptytree system and only having > alsa-lib be installed instead of the kernel driver, alsa-driver. I've been using Gentoo since 1.4 and I've *never* installed a 2.4 kernel. Always have used 2.6...
Hm, then not a clue. It could be a 2005.0 thing?
(In reply to comment #8) > X does get pulled in at stage 2 IIRC. the handbook used to recommend using the following command, but that seems to have been dropped: USE="-X" emerge system i can't imagine what _system_ packages actually benefit from X11, but i guess an emerge -pvt would show that...
That Xorg gets pulled in is the choice of the user. If his USE flags make it a dependency, then so be it. What's the difference anyway, he'll want it eventually. But it shouldn't break the installation. And if it does, it should be reported on the ebuild, not documentation. We don't document screw-ups.
OK. Here's the deal: - sys-libs/lib-compat is installed in the "emerge -e system" step - sys-libs/lib-compat has sdl USE flag, which pulls media-libs/libsdl - media-libs/libsdl has alsa USE flag, which pulls media-libs/alsa-lib - media-libs/alsa-lib needs virtual/alsa which is provided by media-sound/alsa-driver - media-sound/alsa-driver does not compile w/o configured kernel-sourcetree Where should the bug go? As a side note: The handbook states under "Optional: Installing a PPPoE Client" "If you need rp-pppoe to connect to the net, you need to install it. [...] The USE="-X" will prohibit xorg-x11 to be installed as a dependency (rp-pppoe has graphical tools; if you want those enabled, you can recompile rp-pppoe later on or have xorg-x11 installed now -- which takes a long time to compile)." If, as you say: "That Xorg gets pulled in is the choice of the user.", that paragraph could be left out. Not reopening since I'm not sure where this should go.