Ya os presentamos nuestro nuevo compilador de Silicon en una entrada anterior del blog. Este nuevo compilador se utilizará para construir aplicaciones nativas de Silicon y estará disponible sólo en modo proyecto.
Las aplicaciones nativas de Intel (en Windows y Mac) seguirán utilizando el compilador clásico.
Vamos a profundizar y ver exactamente cómo funciona.
El compilador de 4D Silicon es especial: es un compilador de 2 pasos.
Primero, traduce el código 4D en archivos fuente C++. Y luego compila el código C++ utilizando Clang, un compilador de código abierto de última generación en Mac.
Este enfoque tiene muchas ventajas:
– Optimizado: La aplicación resultante se compila utilizando las mejores optimizaciones, tan rápido como el código C++ puro.
– Actualizado: Apple sólo da escasa información sobre sus procesadores, por lo que tenemos que utilizar sus compiladores para obtener aplicaciones nativas de Silicon. Esta limitación es también una ventaja, ya que con cada nuevo procesador llegará una nueva versión de Clang. Así, tus aplicaciones se beneficiarán de las últimas mejoras y serán compatibles con cualquier nueva generación de máquinas Silicon.
¿Qué ha cambiado?
Este nuevo enfoque viene con algunos cambios.
En primer lugar, ahora tiene la opción de compilar para procesadores Silicon y/o Intel. En la pestaña de Compilador de la Configuración de la Aplicación, hay un nuevo parámetro llamado Objetivo de Compilación.
Puedes establecerlo en tu procesador (Silicio en Mac de Silicio, Intel en caso contrario) o en todos los procesadores (Silicio e Intel). Como nota adicional, puedes compilar para Silicon en cualquier Mac (Intel o Silicon) pero no en una máquina Windows:
Para compilar para Silicon, necesitarás Clang. Clang viene con la última versión de XCode. Si no lo tiene, 4D le guiará a la AppStore para instalar XCode.
Compilación incremental
El compilador de Silicon utiliza la compilación incremental. Esto significa que la primera vez que compile una aplicación, o justo después de limpiar el código compilado, el tiempo de compilación será significativamente mayor ya que 4D compilará todo. Pero las compilaciones subsiguientes sólo compilarán los archivos que haya cambiado y, por lo tanto, deberían ser más o menos tan rápidas como de costumbre.
Una vez que la compilación haya terminado, verá un nuevo directorio en su carpeta de paquetes llamado Librerías. Dentro, la biblioteca del sistema lib4d-arm64.dylib contendrá el código compilado de su aplicación.
Eso es todo. Sólo tienes que reiniciar en modo compilado y podrás utilizar tu aplicación de forma nativa en Silicon.
Si tienes comentarios o preguntas, ven a preguntarnos en el foro de 4D.
¡Feliz compilación!