Linux 7.3 da el paso firme para compilar Rust con GCC

  • El kernel Linux 7.3 incorpora los primeros arreglos para el backend experimental rustc_codegen_gcc.
  • El objetivo es ampliar el soporte de Rust a arquitecturas no cubiertas por LLVM, como m68k y Alpha.
  • La iniciativa la lidera el desarrollador Miguel Ojeda y su equipo, aunque el trabajo aún es experimental.
  • Esto podría acelerar la adopción de Rust en sistemas embebidos y hardware antiguo.

Linux 7.3 con soporte para Rust

Linux no para de evolucionar y, aunque muchas novedades pasan desapercibidas, cada versión del kernel trae cambios que allanan el camino para el futuro. En esta ocasión, la llegada de Linux 7.3 ha dado el pistoletazo de salida a una serie de ajustes que persiguen un objetivo concreto: que el código escrito en Rust pueda compilarse con GCC, además de con el compilador habitual LLVM. Se trata de una movilidad que puede abrir las puertas a muchas arquitecturas que hasta ahora quedaban fuera del ecosistema Rust en el kernel.

No es un salto inminente ni un cambio radical de día a día. Los desarrolladores involucrados, bajo el paraguas del equipo de Miguel Ojeda, acaban de enviar una solicitud de integración con los primeros retoques para que el generador de código rustc_codegen_gcc se vaya afianzando dentro de Linux 7.3. El principal atractivo de este backend es que GCC se encarga de transformar el código Rust en instrucciones de máquina, y así se pueden cubrir arquitecturas como m68k o Alpha, que no cuentan con el respaldo de LLVM, algo especialmente útil en el mundillo de los sistemas embebidos y microcontroladores.

Linux 7.0 ya está disponible
Artículo relacionado:
Linux 7.0 ya está disponible: cambios clave en el nuevo kernel

Un respaldo que no quita su espacio a LLVM

Que el kernel reciba estas primeras correcciones no implica que LLVM vaya a pasar a un segundo plano. Al contrario, LLVM seguirá siendo el camino principal para la mayoría de arquitecturas habituales. Lo que se busca es simplemente que haya una alternativa sólida: una vía para llegar a todo ese hardware donde LLVM no llega. Con este movimiento, Linux demuestra, una vez más, su capacidad de adaptarse a distintos entornos, aprovechando las capacidades del proyecto GCC en la generación de código de Rust.

Linux 7.3 y su integración con Rust

Es importante no confundir esta iniciativa con otros proyectos como gccrs, que es un compilador completo para Rust basado en GCC. Aquí, en cambio, rustc_codegen_gcc se apoya en el compilador rustc pero utiliza la infraestructura de optimización de GCC. La ventaja es que se aprovechan las técnicas de optimización de GCC y su soporte para muchas más arquitecturas que LLVM, lo que puede allanar el camino para que Rust se abra paso en plataformas minoritarias.

¿Qué supone esto para el desarrollo futuro?

El camino hacia una integración completa aún es largo y el código todavía tiene etiqueta de “experimental”. Pero la llegada de estos arreglos a Linux 7.3 marca el inicio de un trabajo que tiene pinta de ser beneficioso a medio plazo. Además, también se han incluido correcciones para evitar futuras advertencias de Clang y actualizaciones de módulos del kernel, algo que demuestra una apuesta clara por mantener la compatibilidad con las últimas herramientas del compilador.

Desde el punto de vista del usuario, estos cambios no van a notarse de manera directa, pero sí a nivel de mantenimiento y viabilidad. La comunidad de desarrollo sigue de cerca estos pasos, y lo que ahora es una base experimental puede terminar siendo fundamental para que Rust tenga un alcance mucho mayor. La clave está en que el kernel se está preparando para no quedarse atrás en los nuevos tiempos, y ese trabajo suele llegar antes de que el usuario pueda palparlo.

Linux 6.18
Artículo relacionado:
Linux 6.18 se consolida como kernel clave con mejoras profundas en rendimiento, seguridad y soporte de hardware

Linux sigue consolidándose como un sistema mucho más polivalente, y esta apuesta por ampliar el horizonte de Rust es una pieza importante en esa estrategia. No se trata de un cambio llamativo, pero sí de un progreso que a la larga puede resultar esencial para una mayor diversidad de dispositivos. De momento, Linux 7.3 se cuela como un paso previo a lo que puede ser un mayor respaldo a Rust en entornos menos convencionales, gracias a esa hibridación que ya está en marcha con el compilador GCC.


Añadir como fuente preferida en Google