Como en cualquier actualización de importancia del núcleo de su sistema Gentoo, siempre hay posibilidad de que surjan problemas imprevistos. Es sensato hacer siempre una copia de seguridad de todos los datos importantes antes de empezar este proceso. Si es posible, trate de dar un gran espacio de tiempo para esta actualización y así evitar precipitarse. Todo el software de su máquina necesitará ser recompilado.
Ésta no es la única manera de actualizar su sistema. En vez de eso, puede instalar un nuevo sistema 1.4 en una partición independiente y reutilizar parte de la configuración de su sistema. Este método también tiene la ventaja de poder retroceder en cualquier momento y volver a su antiguo sistema. También puede simplemente decidir no actualizar el sistema. Si decide que quiere actualizarlo, siga leyendo.
Siempre que los listados sugieran ejecutar el comando emerge, siempre es una buena idea hacer una prueba ejecutando el comando con la opción -p o --pretend para asegurarse de que hará lo que uno está esperando.
Obtener la versión de Portage más actual posible
Parte de la sintaxis de los ebuilds actuales es ilegible para otras versiones de Portage. Si no tiene al menos Portage 2.0.44, intente actualizarlo.
Listado de Código 2.1: Actualizar Portage |
# emerge --sync # emerge -u portage |
Nota: Si su versión de Portage es muy antigua, puede que obtenga un mensaje de error que contenga la frase "unscriptable object". Lea y siga las instrucciones que hay en /usr/portage/sys-apps/portage/files/README.RESCUE. Su instalación de Portage debería ser entonces reciente. |
Preparar GCC para la coexistencia
Estará instalando una nueva versión de GCC durante esta actualización. Las versiones de GCC anteriores a la 2.95.3-r8 no están diseñadas para tener múltiples versiones de GCC instaladas. Por lo tanto, debe actualizar GCC al menos a la versión 2.95.3-r8. Esto tendrá también el buen efecto secundario de instalar en su sistema el paquete gcc-config el cual se puede emplear para cambiar hacia atrás y adelante entre varias versiones de GCC instaladas.
Listado de Código 2.2: Actualizar GCC |
# emerge -u gcc
|
Ahora puede comprobar si gcc-config funciona correctamente:
Listado de Código 2.3: Comprobar el perfil de GCC |
# gcc-config --get-current-profile
|
Ésto debería devolver i686-pc-linux-gnu-2.95.3 en la mayoría de sistemas x86. En sistemas más viejos puede devolver i586-pc-linux-gnu-2.95.3.
Ahora ya puede instalar una nueva versión de GCC sin dañar su compilación actual. Mire en /usr/portage/sys-devel/gcc una versión del ebuild de GCC que sea al menos la 3.2.1-r6. Elija la versión más alta para su arquitectura marcada como estable. Para ver si a un ebuild se le considera estable para su arquitectura, busque la línea KEYWORDS dentro del fichero del ebuild. Si tiene listada su arquitectura sin el signo ~ delante, entonces se le considera estable. Suponiendo que la versión 3.2.2 es la actual versión más estable, primero necesitaremos borrar la dependencia de glibc para gcc.
Edite /usr/portage/sys-devel/gcc/gcc-3.2.2.ebuild y busque la línea que pone DEPEND. Borre la dependencia glibc y guarde los cambios del ebuild.
Listado de Código 2.4: Editar gcc-3.2.2.ebuild |
# vim /usr/portage/sys-devel/gcc/gcc-3.2.2.ebuild
|
Ahora instale la última versión de GCC en su sistema:
Listado de Código 2.5: Instalar el último GCC |
# USE="-java" emerge /usr/portage/sys-devel/gcc/gcc-3.2.2.ebuild
|
Ahora necesita cambiar dos tipos de perfiles: Su perfil para gcc-config y su perfil para Portage.
Listado de Código 2.6: Cambiar el perfil de Portage |
# cd /etc # rm make.profile # ln -s ../usr/portage/profiles/default-x86-1.4 make.profile (Cambiar "x86" por su arquitectura) |
Listado de Código 2.7: Cambiar el perfil de GCC |
# gcc-config --list-profiles (Observe la versión que acaba de emerger para usarla ahora) # gcc-config i686-pc-linux-gnu-3.2.2 (Cambie la versión por la que vio anteriormente) |
Ahora necesita recompilar su serie principal de herramientas con su nuevo compilador. Si continúa en la misma shell, necesitará ejecutar source /etc/profile cuando gcc-config se lo indique. Luego haga un emerge de glibc y binutils con su nuevo compilador:
Listado de Código 2.8: Reconstruir las herramientas |
# emerge glibc binutils
|
Aviso: Seguramente actualizará glibc de la versión 2.2 o anterior a la 2.3. Después no retroceda la versión de glibc. Cualquier software que haya compilado con glibc 2.3 dejará de funcionar, y esto puede hacer inestable su sistema. |
Recompilar todo con su nuevo compilador
Ahora puede compilar todo su sistema con su nuevo compilador:
Listado de Código 2.9: Reconstruir todo el sistema |
# emerge -e world
|
Nota: Si este comando fallara por los errores en algún punto, puede usar emerge --resume para continuar el proceso por donde se interrumpió. Para ésto se necesita Portage 2.0.47 o superior. |
El contenido de este documento está registrado bajo los términos de la licencia Creative Commons - Reconocimiento / Compartir Igual