1 |
Alan McKinnon wrote: |
2 |
> On 12/05/2013 23:16, Dale wrote: |
3 |
>> Howdy, |
4 |
>> |
5 |
>> I been noticing something weird when I upgrade gcc. Is this normal? |
6 |
>> |
7 |
>> root@fireball / # genlop -c |
8 |
>> |
9 |
>> Currently merging 2 out of 5 |
10 |
>> |
11 |
>> * sys-devel/gcc-4.4.7 |
12 |
>> |
13 |
>> current merge time: 6 seconds. |
14 |
>> ETA: 24 minutes and 27 seconds. |
15 |
>> |
16 |
>> Currently merging 3 out of 5 |
17 |
>> |
18 |
>> * net-misc/curl-7.30.0 |
19 |
>> |
20 |
>> current merge time: 7 seconds. |
21 |
>> ETA: 18 minutes and 50 seconds. |
22 |
>> |
23 |
>> Currently merging 2 out of 5 |
24 |
>> |
25 |
>> * sys-devel/gcc-4.4.7 |
26 |
>> |
27 |
>> current merge time: 7 seconds. |
28 |
>> ETA: 21 minutes and 14 seconds. |
29 |
>> root@fireball / # |
30 |
>> |
31 |
>> |
32 |
>> I'm not worried about curl. It just happened to be there. This is the |
33 |
>> list of packages it is supposed to update: |
34 |
>> |
35 |
>> root@fireball / # emerge -uvaDN world |
36 |
>> |
37 |
>> These are the packages that would be merged, in order: |
38 |
>> |
39 |
>> Calculating dependencies... done! |
40 |
>> [ebuild R ] sys-devel/gcc-4.5.4:4.5 USE="gtk mudflap (multilib) |
41 |
>> nls nptl openmp (-altivec) -cxx -doc (-fixed-point) -fortran -gcj |
42 |
>> (-hardened) (-libssp) -lto -multislot -nopie -nossp -objc -objc++ |
43 |
>> -objc-gc {-test} -vanilla (-graphite%)" 0 kB |
44 |
>> [ebuild R ] sys-devel/gcc-4.4.7:4.4 USE="gtk mudflap (multilib) |
45 |
>> nls nptl openmp (-altivec) -cxx -doc (-fixed-point) -fortran -gcj |
46 |
>> (-hardened) (-libssp) -multislot -nopie -nossp -objc -objc++ -objc-gc |
47 |
>> {-test} -vanilla (-graphite%)" 0 kB |
48 |
>> [ebuild U ] net-misc/curl-7.30.0 [7.29.0-r1] USE="ipv6 ssl threads |
49 |
>> -adns -idn -kerberos -ldap -metalink -rtmp -ssh -static-libs {-test}" |
50 |
>> CURL_SSL="openssl -axtls -cyassl -gnutls -nss -polarssl" 0 kB |
51 |
>> [ebuild U ] app-misc/tmux-1.8 [1.6] USE="-vim-syntax" 0 kB |
52 |
>> [ebuild U ~] kde-base/kdelibs-4.10.3-r2:4 [4.10.3:4] USE="3dnow alsa |
53 |
>> bzip2 fam handbook jpeg2k lzma mmx nls opengl (policykit) |
54 |
>> semantic-desktop spell sse sse2 ssl udev udisks upower zeroconf -acl |
55 |
>> (-altivec) (-aqua) -debug -doc -kerberos -openexr {-test}" 0 kB |
56 |
>> |
57 |
>> Total: 5 packages (3 upgrades, 2 reinstalls), Size of downloads: 0 kB |
58 |
>> |
59 |
>> Would you like to merge these packages? [Yes/No] y |
60 |
>> |
61 |
>> I noticed this one or twice before. It is compiling the same compiler |
62 |
>> version twice when it should be upgrading/recompiling two *different* |
63 |
>> versions. I read before that gcc compiles three times or something but |
64 |
>> the thing is, it can compile for HOURS and never finish. Usually I stop |
65 |
>> it and restart emerge and it compiles as it should, one for each version |
66 |
>> and finishes as it should time wise. I once started the upgrade and |
67 |
>> went to take a nap. I woke up around 5 or 6 hours later to find gcc |
68 |
>> compiling twice on the same version. Even libreoffice only takes a hour |
69 |
>> or so. |
70 |
>> |
71 |
>> Anyone else see this before? Now to go stop this one and get it to |
72 |
>> update right and not take all week. |
73 |
> What have you got in world for gcc? |
74 |
|
75 |
|
76 |
root@fireball / # cat /var/lib/portage/world | grep gcc |
77 |
sys-devel/gcc:4.4 |
78 |
sys-devel/gcc:4.5 |
79 |
root@fireball / # |
80 |
|
81 |
I generally keep two versions. Got bit once. Long time ago but still, |
82 |
no fun to fix. |
83 |
|
84 |
|
85 |
> What's in make.conf? |
86 |
|
87 |
This is the USE line. I'm not sure if you want all the rest. Rest is |
88 |
normal stuff, pretty much. lol |
89 |
|
90 |
USE="3dnow 3dnowext X a52 acpi alsa aml apng automount avahi \ |
91 |
bash-completion bzip2 -cairo cddb cdr chroot cleartype clucene |
92 |
corefonts \ |
93 |
cups curl dbus declarative dri dvd dvdr embedded escreen esd \ |
94 |
exif faac ffmpeg fontconfig -fortran gif gimp gkrellm gphoto2 \ |
95 |
gtk hbci hddtemp iostats ipv6 java javascript jbig jpeg2k \ |
96 |
justify kde kmod libwww logrotate loop-aes lvm lzma \ |
97 |
mdnsresponder-compat melt mmx mmxext mng mp3 mplayer mysql nls |
98 |
nsplugin \ |
99 |
nvidia offensive ofx opengl openrc parport pdf pdfimport \ |
100 |
policykit ppds ppp qt4 sasl seamonkey semantic-desktop sift smp \ |
101 |
sse sse2 sse4a syslog tcl threads tiff tk truetype type1 udev \ |
102 |
usb vcd webkit win32codecs wma wmf yahoo zeroconf -acl \ |
103 |
-bluetooth -branding -doc -dts -eds -fftw -gcj -gnome -jabber \ |
104 |
-jingle -ldap -musepack -openldap -oss -otr sqlite -sqlite3 -theora \ |
105 |
-v41 -xulrunner -h -crypt -cxx" |
106 |
|
107 |
|
108 |
> |
109 |
> gcc's build system does cause gcc tro be built three times[1], but |
110 |
> that's internal to gcc and has nothing to do with portage. There should |
111 |
> still only be one emerge for a SLOT. If it's doing the same package |
112 |
> twice, then the files in /var/tmp/portage are liable to get continually |
113 |
> clobbered and who knows what will happen. |
114 |
> |
115 |
> |
116 |
> [1] The logic goes something like this: it's a compiler, so the code it |
117 |
> produces must be consistently identical for identical inputs. So, the |
118 |
> current compiler builds gcc, giving version Y built by version X. That |
119 |
> instance of gcc in turn builds a gcc, giving version Y built by version Y. |
120 |
> |
121 |
> Now you should have two copies of the same version of gcc, and they |
122 |
> should be identical, plus the output code must also be identical. The |
123 |
> gcc builds system checks for this by actually doing compiles and |
124 |
> comparing the results. I've gotten a bit hazy on what specific bits |
125 |
> actually do what, but that's the general concept. But all this |
126 |
> rebuilding is internal and you only see it if you examine the console |
127 |
> output scrolling by, it will never show up in any portage tools. |
128 |
> |
129 |
|
130 |
I think your memory is right. That is what I remember too and I think |
131 |
it was you explaining it but that was a while back. Here is the thing. |
132 |
After my last post, I stopped the emerge. I emerged one version of gcc |
133 |
and it emerged fine in the normal time of around 20 minutes. I then did |
134 |
a emerge -uvaDN world and it compiled the other version and the rest as |
135 |
it should. It seems when there is two versions of gcc to upgrade, |
136 |
something gets weird. When I do one at a time, it works fine. I'm just |
137 |
not sure why tho. Is it having two versions in world at the same time? |
138 |
Surely not. I been doing that for a long time and this double thing |
139 |
started a month or so ago. Thought it was a fluke at first. |
140 |
|
141 |
Weird huh? |
142 |
|
143 |
Dale |
144 |
|
145 |
:-) :-) |
146 |
|
147 |
-- |
148 |
I am only responsible for what I said ... Not for what you understood or how you interpreted my words! |