Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 94535 - Setting specific USE flags may prevent emerge system from completing successfully
Summary: Setting specific USE flags may prevent emerge system from completing successf...
Status: RESOLVED WONTFIX
Alias: None
Product: [OLD] Docs-user
Classification: Unclassified
Component: Gentoo Linux x86 Installation Guide (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Docs Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-30 11:59 UTC by Christian Wolf
Modified: 2005-05-31 01:55 UTC (History)
0 users

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


Attachments
Attchmnt addes proposed pgraph on USE flag setting warning for S1/S2 users (hb-install-system-useflagwarning.diff,995 bytes, patch)
2005-05-30 15:12 UTC, Sean D. Quinn
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Christian Wolf 2005-05-30 11:59:50 UTC
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 :-)
Comment 1 Jan Kundrát (RETIRED) gentoo-dev 2005-05-30 12:16:15 UTC
Could you please post exact combination of USE flags?  
 
BTW, hb-install-system.xml does talk about "X" USE flag... 
Comment 2 Christian Wolf 2005-05-30 12:18:07 UTC
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...
Comment 3 Christian Wolf 2005-05-30 12:19:48 UTC
Wait a sec...
It used to be
USE="... alsa ..."
Comment 4 Sean D. Quinn 2005-05-30 13:39:25 UTC
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."
Comment 5 Christian Wolf 2005-05-30 13:48:09 UTC
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."
Comment 6 Sean D. Quinn 2005-05-30 14:56:13 UTC
> "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." 
Comment 7 Sean D. Quinn 2005-05-30 15:12:35 UTC
Created attachment 60218 [details, diff]
Attchmnt addes proposed pgraph on USE flag setting warning for S1/S2 users
Comment 8 Shyam Mani (RETIRED) gentoo-dev 2005-05-30 18:41:12 UTC
(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.
Comment 9 Shyam Mani (RETIRED) gentoo-dev 2005-05-30 18:48:04 UTC
(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...
Comment 10 Sean D. Quinn 2005-05-30 18:55:33 UTC
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.
Comment 11 Shyam Mani (RETIRED) gentoo-dev 2005-05-30 19:08:11 UTC
(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...

Comment 12 Sean D. Quinn 2005-05-30 19:10:19 UTC
Hm, then not a clue. It could be a 2005.0 thing?
Comment 13 Jonathan Smith (RETIRED) gentoo-dev 2005-05-30 20:41:42 UTC
(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...
Comment 14 Sven Vermeulen (RETIRED) gentoo-dev 2005-05-31 00:14:09 UTC
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.
Comment 15 Christian Wolf 2005-05-31 01:55:45 UTC
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.