Tal vez hay algunos problemas de compatibilidad?
Tengo la impresión de que para los sistemas basados en Intel, el compilador de Intel podría hacer un mejor trabajo que GCC. ¿Quizás ya hay una distribución que ha intentado esto?
Creo que esto podría ser bastante sencillo con Gentoo.
Respuestas:
No podrás compilar todo con icc. Muchos programas utilizan extensiones GCC para el lenguaje C. Sin embargo, Intel ha hecho un gran esfuerzo para admitir la mayoría de estas extensiones; por ejemplo, las versiones recientes de icc pueden compilar el kernel de Linux.
Gentoo es de hecho su mejor apuesta si le gusta recompilar su software de una manera inusual. La página de icc en el wiki de Gentoo describe los principales obstáculos.
Primero haga una instalación básica de Gentoo, y
emerge icc
. No elimine icc más adelante siempre que tenga algún binario compilado con icc en su sistema. Tenga en cuenta que icc está instalado en/opt
; si eso no está en su partición raíz, deberá copiar las bibliotecas icc a su partición raíz si alguno de los programas utilizados en el arranque se compila con icc.Configure
/etc/portage/bashrc
y declare sus opciones de compilación favoritas; vea el wiki de Gentoo para obtener un script más completo que admita la creación de diferentes paquetes con diferentes compiladores (esto es necesario porque icc rompe algunos paquetes).fuente
Sin duda sería una experiencia interesante. Sin embargo, recompilar una distribución completa de Linux usando un compilador alternativo no sería realmente sencillo. Muchos paquetes esenciales dependen de GCC y otras utilidades de cadena de herramientas GNU.
Sería factible utilizar un compilador alternativo para aquellos paquetes que no requieren que GCC cree un híbrido. Puede ser posible reemplazar los paquetes dependientes de GCC con otros que se construirían con su compilador, pero en la mayoría de los casos no hay demasiadas alternativas. Donde los haya, deberá determinar si esas alternativas serán tan funcionales para su uso previsto.
Sin embargo, la verdadera pregunta es: ¿valdría la pena? Si está intentando construir un sistema embebido, un compilador alternativo puede producir binarios más pequeños. Si está creando un clúster de cómputo, puede obtener una ejecución de código más rápida. Si está creando un escritorio, obtendrá una excelente experiencia de aprendizaje.
Creo que al final (suponiendo que esté construyendo un escritorio) encontrará que es cierto lo que muchos usuarios de la distribución de fuentes finalmente deciden: la cantidad de tiempo dedicado a la optimización y construcción y reconstrucción supera con creces el tiempo ahorrado por una ejecución de código más rápida. Eso no quiere decir que no deba hacerse, podría ser bastante divertido. Si lo hace, este sitio sería un gran lugar para encontrar respuestas y documentar sus esfuerzos.
fuente