Nuitka, un compilador Python que pot convertir aplicacions Python en binaris C

Nuitka

Nuitka el compilador optimitzador Python que crea executables

Nuitka és un projecte de Python escrit a Python que compila Python a C, és a dir, un compilador de Python capaç de generar un binari independent que no requerís el temps d'execució de Python al sistema on s'executa.

Nuitka es destaca per mantenir, tant com sigui possible, la màxima compatibilitat amb l'ecosistema Python, el que assegura que biblioteques de tercers com NumPy funcionin de manera fiable. A més, Nuitka s'esforça per millorar el rendiment dels programes Python compilats sempre que sigui factible, mantenint alhora una compatibilitat general sòlida.

Tot i això, és important tenir en compte que les millores de rendiment no estan garantides i poden variar considerablement segons la càrrega de treball. És possible que alguns programes no experimentin millores significatives en el rendiment. Per tant, com a regla general, es recomana no dependre de Nuitka com una solució per millorar-ne el rendiment, sinó més aviat com una eina d'empaquetat fiable.

Nuitka admet les versions 2.6, 2.7 o 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, 3.11 de Python i compta amb suport per a Linux, FreeBSD, NetBSD, macOS X i Windows, a més de suport per a les arquitectures (amd86) i ARM.

Què hi ha de nou a Nuitka 2.0?

Actualment, Nuitka es troba en la seva versió 2.0 la qual fa poc va ser llançada i s'hi destaca que s'hi han incorporat diverses millores i funcionalitats a la configuració del paquet, el que permet consultar valors de paquets instal·lats durant la compilació i utilitzar aquests valors per definir el backend. La compatibilitat amb variables a la configuració simplifica moltes tasques estàndard que anteriorment requerien la connexió de complements.

A més, s'ha afegit suport per a paràmetres definits per lusuari per influir en la configuració de cada paquet. Aquests paràmetres poden ser llegits utilitzant la nova funció get_parameter i emprar-se per seleccionar el comportament dels mòduls. Per exemple, és possible configurar un paràmetre per deshabilitar Numba JIT o Torch JIT.

S'ha introduït l'opció «–include-onefile-external-data» per especificar plantilles de fitxers de dades definides a la configuració però que s'han de subministrar per separat del fitxer executable quan es compila en mode onefile. Així mateix, s'ha afegit l'opció «–cf-protection» per configurar el mode de protecció CFI (Integritat de flux de control) a GCC, el qual preveu les violacions de l'ordre d'execució normal (flux de control).

Dels altres canvis que es destaquen:

  • Suport agregat per a decisions de mòdul, que permeten als usuaris influir en la configuració de Nuitka per paquet.
  • Addició de suport per a configuracions de paquets de Nuitka, cosa que facilita la consulta de valors de paquets instal·lats.
  • Detecció d'executables compilats massa grans per evitar violacions de límits de mida.
  • Millores en la generació d'informes i la capacitat de crear relacions públiques amb els canvis a Nuitka-Watch.
  • S'ha implementat una anàlisi de tipus de bucles que s'utilitzarà en el futur per implementar optimitzacions selectives.
  • S'han afegit optimitzacions per accelerar el treball amb variables no compartides i escapades.
  • Solució alternativa per a funcions privades com a ranures Qt que no tenien noms alterats.
  • Correcció de la detecció de paquets pip en utilitzar Nuitka.
  • Millores a l'analitzador de càrrega diferida per a pydantic.
  • Afegeix fitxers de dades per a diversos paquets, com pyocd i cmsis_pack_manager.
  • Correccions per gestionar correctament les especificacions ampliades en temps d'execució.
  • Solució per evitar falles durant l'execució de certs mètodes.
  • Millores en la inclusió de paquets des de la línia d'ordres.
  • Solucions específiques per a plataformes com Android, Windows i Debian.
  • Millores en la compatibilitat amb diferents versions de Python i sistemes operatius.

Finalment si estàs interessat a poder conèixer més sobre això, Pots consultar els detalls en el següent enllaç.

Com instal·lar Nuitka a Linux?

Per als interessats en poder instal·lar Nuitka al vostre sistema, han de saber que la instal·lació és senzilla, només han de comptar amb Python instal·lat i el sistema de gestió de paquets pip.

Per instar Nuitka només cal executar la següent ordre:

pip install nuitka

Quant a l'ús d'aquest compilador, podeu consultar el manual d'usuari a el següent enllaç.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.