Advertisment

Nuevo enfoque para Chrome en Windows: el compilador de Microsoft ya no existe


Nuevo enfoque para Chrome en Windows: el compilador de Microsoft ya no existe


(Última actualización: 7 de marzo de 2018 8:07 pm)

Deshacerse del compilador de programación actual de Microsoft

En este momento, El navegador Chrome de Google está utilizando el llamado compilador Clang para Windows, en lugar de Microsoft C ++. Por lo tanto, Google utiliza actualmente el mismo compilador de programación para lo siguiente: macOS, Windows, Android y Linux. En consecuencia, Chrome será, por lo tanto, el primer gran proyecto en utilizar el software Clang en Windows.

Cómo llegamos aquí

Echemos un vistazo a 2013, momento en el que Google tomó la decisión de usar Clang hasta el final, incluido Windows. Tenía ciertas ventajas porque usar el mismo compilador para todo simplificaba la forma en que se trataban los errores y fallos en la plataforma. Una gran ventaja aportada a Clang es el hecho de que Google desde hace mucho tiempo buscaba herramientas de diagnóstico (UBSan y ASan).

Chrome en Windows, por otro lado, eligió el compilador Visual C ++ de Microsoft, basándose en la revisión de que es la opción más adecuada y compatible con el cliente para Windows. Tuvo un gran soporte en cuanto a depuración y al alcance de herramientas para el diagnóstico. Los elementos vitales de la experiencia del desarrollador de Windows consisten en el depurador de Visual Studio, mencionado anteriormente, y WinDbg, al que la hermandad de C ++ es muy aficionada.

Punto de fricción

La cadena de herramientas LLVM junto con Clang no se beneficiaron mucho del soporte de Windows. Esto los afectó tanto de forma superficial como profunda. Si lo miramos, lo que Windows usa para las herramientas está todo esbozado alrededor del formato de archivo de la base de datos del programa (conocido como PDB) que contiene características y contenido de depuración valiosos. Todas las ventajas que Windows tiene a su alcance, depuradores e instrumentos de terceros, extraen conclusiones sobre la disponibilidad de los programas de Windows como documentos PDB. Hay un problema: LLVM no puede crear bases de datos de programas.

No es de extrañar que, como es el caso de la mayoría de los grandes proyectos de software, las API de Windows soliciten complementos que no son estándar, lo que determina que Clang se altere para poder admitir lo que se avecinaba.

Pasos pequeños

El propósito era lograr que Chrome usara Clang para Windows. El primer paso fue actualizar LLVM y Clang para que ofrecieran asistencia de alta calidad para Windows. Ya en 2015, dar forma al navegador fue un éxito y Google hizo varias pruebas en: canal de desarrollo Canary, seguido de los canales de desarrollo y beta.

Microsoft aporta su contribución al hacer pública una cantidad importante de fuentes utilizadas para fabricar PDB, asegurándose de que tanto sus encabezados como las bibliotecas de C ++ funcionen correctamente con Clang.

Aún quedan por hacer cambios

En el momento actual, Google no se ha movido completamente a la cadena de herramientas LLVM, pero planea hacerlo una vez que la biblioteca de Microsoft C ++ ya no funcione. Para planes futuros, Google está pensando en cambiar al enlazador LLVM y poner también en uso la biblioteca Clang C ++.

Advertisment

Advertisment

Obtén más cosas como esta
en su bandeja de entrada

Suscríbase a nuestra lista de correo y obtenga productos interesantes y actualizaciones en su bandeja de entrada de correo electrónico.

Gracias por suscribirse.

Algo salió mal.

Advertisment

Bienvenido a Technobezz

Instalar aplicación
×