Gentoo Archives: gentoo-commits

From: "John Christian Stoddart (chiguire)" <chiguire@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo commit in xml/htdocs/doc/es: gcc-upgrading-upto-4.1.xml
Date: Tue, 01 Nov 2011 12:46:31
Message-Id: 20111101124620.497BA2004B@flycatcher.gentoo.org
1 chiguire 11/11/01 12:46:20
2
3 Added: gcc-upgrading-upto-4.1.xml
4 Log:
5 old version of doc
6
7 Revision Changes Path
8 1.1 xml/htdocs/doc/es/gcc-upgrading-upto-4.1.xml
9
10 file : http://sources.gentoo.org/viewvc.cgi/gentoo/xml/htdocs/doc/es/gcc-upgrading-upto-4.1.xml?rev=1.1&view=markup
11 plain: http://sources.gentoo.org/viewvc.cgi/gentoo/xml/htdocs/doc/es/gcc-upgrading-upto-4.1.xml?rev=1.1&content-type=text/plain
12
13 Index: gcc-upgrading-upto-4.1.xml
14 ===================================================================
15 <?xml version='1.0' encoding="UTF-8"?>
16 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/es/gcc-upgrading-upto-4.1.xml,v 1.1 2011/11/01 12:46:20 chiguire Exp $ -->
17
18 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
19
20 <guide lang="es">
21 <title>Guía Gentoo de actualización del GCC hasta versión 4.1</title>
22
23 <author title="Autor">
24 <mail link="amne@g.o">Wernfried Haas</mail>
25 </author>
26 <author title="Autor">
27 <mail link="jkt@g.o">Jan Kundrát</mail>
28 </author>
29 <author title="Editor">
30 <mail link="halcy0n"/>
31 </author>
32 <author title="Editor">
33 <mail link="nightmorph"/>
34 </author>
35 <author title="Traductor">
36 <mail link="chiguire"/>
37 </author>
38 <author title="Traductor">
39 <mail link="anpereir@g.o">Andrés Pereira</mail>
40 </author>
41 <author title="Traductor">
42 <mail link="srinclan@×××××.com">Sergio D. Rodríguez Inclan</mail>
43 </author>
44
45 <abstract>
46 Este documento guiará al usuario en el proceso de actualización de GCC.
47 </abstract>
48
49 <!-- The content of this document is licensed under the CC-BY-SA license -->
50 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
51 <license/>
52
53 <version>23</version>
54 <date>2008-07-19</date>
55
56 <chapter id="intro">
57 <title>Introducción</title>
58 <section>
59 <title>Actualización de GCC</title>
60 <body>
61
62 <p>
63 ¿Por que debería actualizar? Bueno, GCC es muy similar a cualquier
64 otro paquete en su sistema, pero un poco más crítico. Debería
65 actualizar GCC en caso de que una nueva versión corrija algún bug que
66 le moleste, se añada una nueva funcionalidad que necesita o si quiere
67 mantener su sistema al día. Si ninguno de los casos mencionados le
68 afecta, puede postergar con seguridad la actualización mientras que su
69 versión de GCC esté soportada por los desarrolladores de Gentoo.
70 </p>
71
72 <p>
73 Si instala una nueva versión de GCC (como de 3.3.6 a 3.4.5), el
74 sistema no hará uso de ella automáticamente. Tiene que pedir
75 explícitamente el cambio porque el proceso de migración puede que tome
76 algunos pasos adicionales. Si decide no realizar el cambio, Portage
77 continuará usando la versión antigua de su compilador hasta que cambie
78 de parecer o borre el compilador antiguo del sistema. Las
79 actualizaciones no críticas del gcc se hará automáticamente (por
80 ejemplo de 3.4.5 a 3.4.6).
81 </p>
82
83 <p>
84 Esta guía documentará los pasos necesarios para llevar a cabo una
85 actualización sin contratiempos del compilador usado por su sistema
86 Gentoo. Se dedica una sección específica a la <uri
87 link="#upgrade-3.3-to-3.4">actualización de GCC 3.3 a la versión 3.4 o
88 versiones superiores</uri> y problemas con <c>libstdc++</c>. Hay una
89 segunda sección específica destinada a los usuarios que <uri
90 link="#first-install">instalan Gentoo por primera vez</uri> a partir
91 de stage3 tras haberse liberado una nueva versión principal o no de
92 GCC.
93 </p>
94
95 <warn>
96 Note que actualizar desde GCC-3.4 a GCC-4.1 o superior todavía requiere
97 que siga las instrucciones generales de actualización pues GCC-3.4 y GCC-4.1
98 usan ABIs (Interfaz de Aplicación Binaria) ligeramente diferentes
99 </warn>
100 </body>
101 </section>
102 </chapter>
103
104 <chapter id="upgrade-general">
105 <title>Instrucciones generales de actualización</title>
106 <section>
107 <title>Introducción</title>
108 <body>
109
110 <impo>
111 Si está buscando instrucciones específicas para actualizaciones de
112 GCC-3.3 a GCC-3.4 o superior, por favor consulte la <uri
113 link="#upgrade-3.3-to-3.4">sección dedicada</uri>.
114 </impo>
115
116 <impo>
117 Si está buscando instrucciones específicas para actualizar GCC en
118 instalaciones nuevas, por favor consulte la <uri link="#first-install">
119 sección dedicada</uri>.
120 </impo>
121
122 <p>
123 Generalmente hablando, las actualizaciones a <e>versiones que incluyen
124 correcciones de bugs</e>, como de la 3.3.5 a la 3.3.6, deberían ser
125 bien seguras -- tan solo instale la nueva versión, haga que su sistema
126 la use y recompile el único paquete que se ve afectado,
127 <c>libtool</c>. Sin embargo, algunas actualizaciones de GCC hacen que
128 se corrompa la compatibilidad binaria, en tales casos puede que se
129 necesite una recompilación de los paquetes afectados (o incluso todo
130 el conjunto de herramientas y paquetes centrales (system)).
131 </p>
132
133 <p>
134 Cuando hablábamos acerca de la necesidad de cambiar su compilador a una
135 versión nueva, dijimos que no sucedería automáticamente. No obstante,
136 hay una excepción -- las actualizaciones a versiones que corrigen bugs, como
137 de la 3.3.5 a la 3.3.6, en cuyo caso no utiliza la característica de "multislot"
138 que les permite coexistir en el mismo sistema. Multislot está desactivado por
139 defecto ya que la mayoría de los usuarios no se beneficiará de este.
140 </p>
141
142 <pre caption="Actualizar GCC">
143 # <i>emerge -uav gcc</i>
144
145 <comment>(Por favor reemplace "i686-pc-linux-gnu-4.1.1" con la versión de
146 GCC y configuraciones del CHOST a las que se ha actualizado:)</comment>
147 # <i>gcc-config i686-pc-linux-gnu-4.1.1</i>
148 # <i>source /etc/profile</i>
149
150 <comment>Si ha actualizado de gcc 3 a 4 (por ejemplo, como acá de 3.4.6 a 4.1.1) tendrá que ejecutar fix_libtool_files.sh a mano</comment>
151 <comment>(Reemplace $CHOST con su CHOST actual, ubicado en /etc/make.conf)</comment>
152 <comment>(Reemplace &lt;gcc-version&gt; con su nueva versión de GCC actualizada)</comment>
153 # <i>/usr/share/gcc-data/$CHOST/&lt;gcc-version&gt;/fix_libtool_files.sh 3.4.6</i>
154
155 <comment>(Recompilando libtool)</comment>
156 # <i>emerge --oneshot -av libtool</i>
157 </pre>
158
159 <p>
160 Para estar completamente seguro que su sistema está en un estado
161 seguro, <e>deberá</e> recompilar el toolchain y luego el sistema
162 completo (world) para hacer uso del nuevo compilador.
163 </p>
164
165 <pre caption="Recompilar el sistema">
166 # <i>emerge -eav system</i>
167 # <i>emerge -eav world</i>
168 </pre>
169
170 <p>
171 Es seguro borrar la versión antigua de GCC en este momento. Si siente
172 la necesidad, por favor ejecute el siguiente comando (como siempre,
173 substituya <c>=sys-devel/gcc-3.4*</c> con la versión de GCC que quiere
174 desinstalar):
175 </p>
176
177 <pre caption="Borrar versiones viejas de GCC">
178 # <i>emerge -aC =sys-devel/gcc-3.3*</i>
179 </pre>
180
181 <impo>
182 Por favor note que el GCC 4.1 y versiones nuevas solo pueden compilar
183 núcleos más recientes que 2.4.34. No borre su gcc viejo si desea usar un
184 núcleo viejo.
185 </impo>
186
187 <impo> <!-- FIXME: do we really want to keep it here? -->
188 En caso de estar actualizando de GCC-3.3, debería ejecutar
189 <c>emerge --oneshot sys-libs/libstdc++-v3</c> para proporcionar
190 compatibilidad con aplicaciones binarias más viejas en C++.
191 </impo>
192 </body>
193 </section>
194 </chapter>
195
196 <chapter id="upgrade-3.3-to-3.4">
197 <title>Actualizando GCC-3.3 al 3.4</title>
198 <section>
199 <title>Introducción</title>
200 <body>
201
202 <p>
203 La actualización de GCC/3.3 al 3.4 no es tan perfecta como uno
204 quisiera puesto que la ABI (Interfaz de Aplicación Binaria) de C++
205 cambió entre ambas versiones. Existe un problema con la biblioteca
206 <c>libstdc++</c> de la que también tendremos que ocuparnos.
207 </p>
208 </body>
209 </section>
210
211 <section id="upgrade-3.3-to-3.4-choices">
212 <title>Las opciones</title>
213 <body>
214
215 <impo>
216 Si actualiza del gcc 3.4 al 4.1, por favor consulte las <uri
217 link="#upgrade-general">Instrucciones Generales de Actualización</uri>.
218 </impo>
219
220 <impo>
221 Si está haciendo la actualización en una máquina SPARC, tendrá que
222 hacer la <uri link="#upgrade-3.3-to-3.4-emerge-e">recompilación
223 completa del sistema</uri> debido a ciertos <uri
224 link="http://gcc.gnu.org/gcc-3.4/sparc-abi.html"> cambios internos de
225 la ABI</uri> en el paso de parámetros de GCC.
226 </impo>
227
228 <p>
229 Si actualiza del gcc 3.3 al 3.4, tiene dos posibilidades para
230 actualizar su sistema. El <uri
231 link="#upgrade-3.3-to-3.4-revdep-rebuild">primer método</uri> es más
232 rápido y requiere del uso de la herramienta <c>revdep-rebuild</c> que
233 es parte del paquete <c>gentoolkit</c> mientras que el <uri
234 link="#upgrade-3.3-to-3.4-emerge-e">segundo método</uri> recompila su
235 sistema por completo de forma de hacer uso de las nuevas
236 características de GCC. Es su decisión escoger cuál de los métodos va
237 a seguir. En la mayoría de los casos, el primer método es suficiente.
238 </p>
239
240 <p>
241 Si actualiza del gcc 3.3 al 4.1, no utilice el método basado en
242 revdep-rebuild, sino una <uri
243 link="#upgrade-3.3-to-3.4-emerge-e">reconstrucción completa del
244 sistema</uri>.
245 </p>
246 </body>
247 </section>
248
249 <section id="upgrade-3.3-to-3.4-revdep-rebuild">
250 <title>Usando revdep-rebuild</title>
251 <body>
252
253 <p>
254 Este método necesita que primero instale <c>gentoolkit</c> si es que ya no lo
255 ha hecho. Luego actualizaremos GCC y cambiaremos al nuevo compilador. También
256 recompilaremos el paquete <c>libtool</c> para asegurarnos que el toolchain se
257 encuentre en un estado saludable.
258 </p>
259
260 <pre caption="Instalar gentoolkit y actualizar GCC">
261 # <i>emerge -an gentoolkit</i>
262 # <i>emerge -uav gcc</i>
263 <comment>(Por favor reemplace "i686-pc-linux-gnu-3.4.5" con la versión de GCC
264 GCC y configuraciones del CHOST a las que se ha actualizado:)</comment>
265 # <i>gcc-config i686-pc-linux-gnu-3.4.5</i>
266 # <i>source /etc/profile</i>
267
268 <comment>(Recompilando libtool)</comment>
269 # <i>emerge --oneshot -av libtool</i>
270 </pre>
271
272 <p>
273 Ahora queremos ver qué paquetes revdep-rebuild querrá
274 reconstruir. Luego le diremos a revdep-rebuild que recompile dichos
275 paquetes. Esto puede tomar algo de tiempo, así que tenga paciencia.
276 </p>
277
278 <pre caption="Usar revdep-rebuild">
279 # <i>revdep-rebuild --library libstdc++.so.5 -- -p -v</i>
280 # <i>revdep-rebuild --library libstdc++.so.5</i>
281 </pre>
282
283 <note>
284 Es posible que tenga problemas con versiones de paquetes inexistentes debido a
285 que estén enmascarados o sean antiguos. Si este es el caso, tendrá que usar la
286 opción <c>--package-names</c> de <c>revdep-rebuild</c>. Esto hace que los
287 paquetes sean recompilados basados en su nombre en vez de la versión y nombre
288 exacto.
289 </note>
290
291 <p>
292 Para tener compatibilidad con aplicaciones binarias antiguas en C++ y
293 cualquiera de los paquetes que revdep-rebuild puede haberse saltado, el paquete
294 <c>sys-libs/libstdc++-v3</c> tiene que ser instalado antes de que desinstale
295 GCC 3.3 de su sistema.
296 </p>
297
298 <pre caption="Instalar libstdc++-v3 y desinstalar GCC 3.3">
299 # <i>emerge --oneshot sys-libs/libstdc++-v3</i>
300 # <i>emerge -aC =sys-devel/gcc-3.3*</i>
301 </pre>
302 </body>
303 </section>
304
305 <section id="upgrade-3.3-to-3.4-emerge-e">
306 <title>Usar emerge -e</title>
307 <body>
308
309 <p>
310 Este método, aunque es mucho más lento, recompila todo su sistema para asegurar
311 que todo se haya recompilado con su nuevo compilador, y por tanto, es más
312 seguro. Primero, actualice GCC y libtool y cámbiese a su nuevo compilador.
313 </p>
314
315 <pre caption="Actualizar GCC">
316 # <i>emerge -uav gcc</i>
317 <comment>(Por favor reemplace "i686-pc-linux-gnu-3.4.5" con la versión de GCC
318 GCC y configuraciones del CHOST a las que se ha actualizado:)</comment>
319 # <i>gcc-config i686-pc-linux-gnu-3.4.5</i>
320 # <i>source /etc/profile</i>
321
322 <comment>Si actualizó del gcc 3 al 4 (por ejemplo, del 3.3.6 al 4.1.1 en este caso) tendrá que ejecutar fix_libtool_files.sh manualmente</comment>
323 <comment>(Reemplace $CHOST con su CHOST actual, ubicado en /etc/make.conf)</comment>
324 <comment>(Reemplace &lt;gcc-version&gt; con su nueva versión de GCC actualizada)</comment>
325 # <i>/usr/share/gcc-data/$CHOST/&lt;gcc-version&gt;/fix_libtool_files.sh 3.3.6</i>
326
327 <comment>(Recompilando libtool)</comment>
328 # <i>emerge --oneshot -av libtool</i>
329 </pre>
330
331 <p>
332 Para tener compatibilidad con aplicaciones binarias antiguas en C++ el paquete
333 <c>sys-libs/libstdc++-v3</c> tiene que ser instalado en su sistema.
334 </p>
335
336 <pre caption="Instalar libstdc++-v3">
337 # <i>emerge --oneshot sys-libs/libstdc++-v3</i>
338 </pre>
339
340 <p>
341 Ahora primero recompilaremos los paquetes centrales (system) y luego el sistema
342 completo (world). Esto va a tomar mucho tiempo dependiendo del número de
343 paquetes que tenga instalado, pues recompilará el toolchain entero y los
344 archivos de apoyo del sistema, seguido de cada paquete existente en su sistema.
345 Esto es necesario para asegurar que todos los paquetes hayan sido compilados con
346 el nuevo toolchain, incluyendo el propio toolchain también.
347 </p>
348
349 <pre caption="Recompilar system y world">
350 # <i>emerge -e system</i>
351 # <i>emerge -e world</i>
352 </pre>
353
354 <p>
355 También es seguro borrar las versiones antiguas de GCC en este momento.
356 </p>
357
358 <pre caption="Limpiar el sistema">
359 # <i>emerge -aC =sys-devel/gcc-3.3*</i>
360 </pre>
361 </body>
362 </section>
363 </chapter>
364
365 <chapter id="first-install">
366 <title>Actualizar GCC en una primera instalación</title>
367 <section>
368 <title>Introducción</title>
369 <body>
370
371 <p>
372 La actualización de GCC tras haber instalado un sistema a partir de
373 stage3 es un asunto sencillo. Una de las ventajas que tienen los
374 usuarios de instalaciones nuevas es que no tienen una gran cantidad de
375 software instalado que enlace contra la versión antigua de GCC. El
376 siguiente ejemplo es para una actualización de GCC-3.3 a 3.4. Ciertas
377 partes serán diferentes si actualiza desde otras versiones de GCC. Por
378 ejemplo, los nombres de las bibliotecas usados más abajo por
379 <c>revdep-rebuild</c> son específicas a GCC-3.3, así como la necesidad
380 de instalar <c>libstdc++-v3</c>.
381 </p>
382
383 <p>
384 Si no ha hecho personalizaciones a su sistema, entonces hay que seguir unos
385 pocos pasos para que este quede actualizado a la nueva versión de GCC. Tal como
386 con la actualización de GCC-3.3 a 3.4, hay dos opciones posibles. No obstante,
387 a diferencia de la actualización de GCC-3.3 a 3.4, esta es menos complicada ya
388 que hay pocas diferencias entre ambos métodos. El <uri
389 link="#first-install-revdep-rebuild">primer método</uri> es más rápido y hace
390 uso de la herramienta <c>revdep-rebuild</c> que es parte de <c>gentoolkit</c>,
391 similar al procedimiento descrito arriba. Usar revdep-rebuild hace que
392 se recompilen solamente los paquetes que realmente están enlazados contra las
393 bibliotecas de GCC, mientras que el <uri link="#first-install-emerge-e">
394 segundo método</uri> hace que su nueva instalación se recompile por completo
395 usando la nueva versión de GCC y por tanto, toma mucho más tiempo. Este segundo
396 método nunca se necesita y está documentado solo por completitud.
397 </p>
398
399 <p>
400 Los primeros pasos son comunes a ambos métodos, y deberían ser llevados a cabo
401 por todos los usuarios.
402 </p>
403
404 <pre caption="Actualizar GCC">
405 # <i>emerge -uav gcc</i>
406 <comment>(Por favor reemplace "i686-pc-linux-gnu-3.4.5" con la versión de GCC
407 GCC y configuraciones del CHOST a las que se ha actualizado:)</comment>
408 # <i>gcc-config i686-pc-linux-gnu-3.4.5</i>
409 # <i>source /etc/profile</i>
410
411 <comment>(Recompilar libtool)</comment>
412 # <i>emerge --oneshot -av libtool</i>
413 </pre>
414
415 <p>
416 Para tener compatibilidad con aplicaciones binarias antiguas en C++ el paquete
417 <c>sys-libs/libstdc++-v3</c> tiene que ser instalado en su sistema.
418 </p>
419
420 <pre caption="Instalar libstdc++-v3">
421 # <i>emerge --oneshot sys-libs/libstdc++-v3</i>
422 </pre>
423 </body>
424 </section>
425
426 <section id="first-install-revdep-rebuild">
427 <title>Usar revdep-rebuild</title>
428 <body>
429
430 <p>
431 Este método necesita que primero instale <c>gentoolkit</c> si es que ya no lo
432 ha hecho. Ejecutaremos <c>revdep-rebuild</c> para revisar los paquetes
433 instalados y así ver aquellos que necesitamos recompilar, luego los
434 recompilaremos.
435 </p>
436
437 <pre caption="Instalar gentoolkit y ejecutar revdep-rebuild">
438 # <i>emerge -an gentoolkit</i>
439 # <i>revdep-rebuild --library libstdc++.so.5 -- -p -v</i>
440 # <i>revdep-rebuild --library libstdc++.so.5</i>
441 </pre>
442
443 <note>
444 Es posible que tenga problemas con versiones de paquetes inexistentes debido
445 a que están desactualizados o enmascarados. Si este es el caso, tendrá que usar
446 la opción <c>--package-names</c> de <c>revdep-rebuild</c>. Esto provoca que
447 los paquetes sean recompilados de acuerdo al nombre en vez de su nombre y
448 versión exactos.
449 </note>
450 </body>
451 </section>
452
453 <section id="first-install-emerge-e">
454 <title>Usar emerge -e</title>
455 <body>
456
457 <p>
458 Este método, aunque es mucho más lento, recompila todo el sistema para asegurar
459 que todo se haya recompilado con su nuevo compilador. Esto no es necesario,
460 pero es válido si también está haciendo cambios a sus CFLAGS u otras variables
461 del fichero make.conf que causarán efecto en la compilación del sistema.
462 </p>
463
464 <p>
465 Debido a que estamos llevando a cabo esas acciones después de una instalación
466 inicial, no hay necesidad de recompilar todo el sistema (<c>world</c>) tal como
467 lo haríamos en una actualización de un sistema ya en funcionamiento. Sin
468 embargo, puede hacer una actualización completa en vez de actualizar los
469 paquetes centrales (system), para asegurarse que todos los paquetes están
470 actualizados.
471 </p>
472
473 <pre caption="Recompilar los paquetes centrales (system)">
474 # <i>emerge -e system</i>
475 </pre>
476 </body>
477 </section>
478
479 <section id="first-install-cleaning-up">
480 <title>Limpiando el sistema</title>
481 <body>
482
483 <p>
484 También es seguro quitar las versiones antiguas de GCC en este paso. Por favor,
485 substituya <c>SU-NUEVA-VERSION-DE-GCC</c> con la versión real a la cual se
486 actualizó:
487 </p>
488
489 <pre caption="Limpiar">
490 # <i>emerge -aC "&lt;sys-devel/gcc-SU-NUEVA-VERSION-DE-GCC"</i>
491 </pre>
492 </body>
493 </section>
494 </chapter>
495
496 <chapter id="common-pitfalls">
497 <title>Errores comunes</title>
498 <section>
499 <body>
500
501 <p>
502 Es importante que desactive <c>distcc</c> durante la actualización. Mezclar
503 versiones de compiladores en sus nodos <e>provocará</e> dificultades. Este no
504 se necesita para ccache pues los objetos de éste serán invalidados de
505 cualquier modo.
506 </p>
507
508 <p>
509 Siempre use la misma versión de GCC para su núcleo y módulos adicionales
510 de este. Una vez que recompile su sistema completo (world) con el nuevo GCC,
511 los módulos externos (como <c>app-emulation/qemu-softmmu</c>) no funcionarán
512 al cargarse. Por favor, recompile su núcleo con el nuevo GCC para corregir
513 aquello.
514 </p>
515
516 <p>
517 Si está actualizando en una máquina SPARC, asegúrese de ejecutar <c>silo -f</c>
518 luego de haber completado la actualización completa del sistema (world) para
519 evitar posibles problemas.
520 </p>
521 </body>
522 </section>
523
524 <section>
525 <title>Mensajes de error frecuentes</title>
526 <body>
527
528 <p>
529 Si su sistema se queja de algo como: <e>libtool: link:
530 `/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6/libstdc++.la' is not a valid libtool
531 archive</e>, por favor ejecute
532 <c>/usr/share/gcc-data/$CHOST/&lt;gcc-version&gt;/fix_libtool_files.sh 3.3.6</c>
533 (substituya "3.3.6" con el número de versión que sale en el mensaje de
534 error también $CHOST y &lt;gcc-version&gt; con sus versiones actuales de CHOST
535 y GCC).
536 </p>
537
538 <p>
539 Si observa <e>error: /usr/bin/gcc-config: line 632:
540 /etc/env.d/gcc/i686-pc-linux-gnu-3.3.5: No such file or directory</e>, entonces
541 intente borrar <path>/etc/env.d/gcc/config-i686-pc-linux-gnu</path> y ejecute
542 <c>gcc-config</c> nuevamente, seguido por <c>source /etc/profile</c>.
543 Solamente haga esto si no tiene configurado algún compilador cruzado.
544 </p>
545
546 <p>
547 Si un paquete falla durante <c>emerge -e system</c> o <c>emerge -e world </c>,
548 puede reanudar la operación con <c>emerge --resume</c>. Si un paquete falla
549 repetidamente, sáltelo con <c>emerge --resume --skipfirst</c>. No ejecute otras
550 instancias de emerge entre medio o perderá toda la información para reanudar.
551 </p>
552
553 <p>
554 Si obtiene el mensaje de error <e>spec failure: unrecognized spec option</e>
555 mientras actualiza su compilador, intente volver a su compilador por defecto,
556 deshabilite la variable de entorno <c>GCC_SPECS</c> y actualice
557 nuevamente GCC:
558 </p>
559
560 <pre caption="Recuperar las specs principales">
561 # <i>gcc-config 1</i>
562 # <i>source /etc/profile</i>
563 # <i>unset GCC_SPECS</i>
564 # <i>emerge -uav gcc</i>
565 </pre>
566 </body>
567 </section>
568 </chapter>
569 </guide>