Nuitka, Python kompajler koji može pretvoriti Python aplikacije u C binarne datoteke

noć

Nuitka Python optimizirajući prevodilac koji stvara izvršne datoteke

Nuitka je Python projekt napisan u Pythonu koji kompajlira Python u C, to jest, Python kompajler sposoban generirati nezavisnu binarnu datoteku koja ne zahtijeva Python runtime na sustavu gdje se izvršava.

noć ističe se održavanjem, u najvećoj mogućoj mjeri, maksimalne kompatibilnosti s Python ekosustavom, što osigurava da biblioteke trećih strana kao što je NumPy rade pouzdano. Osim toga, Nuitka nastoji poboljšati izvedbu kompajliranih Python programa gdje god je to moguće, uz zadržavanje jake sveukupne kompatibilnosti.

Međutim, važno je napomenuti da poboljšanja performansi nisu zajamčena i mogu značajno varirati ovisno o radnom opterećenju. Neki programi možda neće doživjeti značajna poboljšanja performansi. Stoga, kao opće pravilo, preporuča se ne oslanjati se na Nuitku kao na rješenje za poboljšanje performansi, već kao na pouzdan alat za pakiranje.

Nuitka podržava Python verzije 2.6, 2.7 ili 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, 3.11 i ima podršku za Linux, FreeBSD, NetBSD, macOS X i Windows, kao i podršku za x86, x86_64 arhitekture (amd64) i ARM.

Što je novo u Nuitki 2.0?

Trenutno, Nuitka je na svojoj verziji 2.0 koji je nedavno pokrenut i ističe da su ugradili razna poboljšanja i funkcionalnosti konfiguracije paketa, koji vam omogućuje postavljanje upita o vrijednostima instaliranih paketa tijekom kompilacije i korištenje tih vrijednosti za definiranje pozadine. Podrška za varijable u konfiguraciji pojednostavljuje mnoge standardne zadatke koji su prije zahtijevali povezivanje dodataka.

Uz to je dodan Podrška za korisnički definirane parametre koji utječu na konfiguraciju svakog paketa. Ovi se parametri mogu očitati pomoću nove funkcije get_parametar i koristiti se za odabir ponašanja modula. Na primjer, moguće je konfigurirati parametar za onemogućavanje Numba JIT ili Torch JIT.

Uvedena je opcija „–include-onefile-external-data» za određivanje predložaka podatkovnih datoteka koji su definirani u konfiguraciji, ali moraju biti isporučeni odvojeno od izvršne datoteke kada se kompajliraju u načinu jedne datoteke. Isto tako, opcija "–cf-zaštita» za konfiguriranje CFI (Control Flow Integrity) načina zaštite u GCC-u, koji sprječava kršenje normalnog redoslijeda izvršenja (kontrolnog toka).

Od ostale promjene koji se ističu:

  • Dodana je podrška za odluke modula, omogućujući korisnicima da utječu na konfiguraciju Nuitke po paketu.
  • Dodana je podrška za konfiguracije paketa Nuitka, što olakšava postavljanje upita o vrijednostima instaliranog paketa.
  • Otkrivanje kompajliranih izvršnih datoteka koje su prevelike da bi se izbjeglo kršenje ograničenja veličine.
  • Poboljšano izvješćivanje i mogućnost izgradnje PR-a s promjenama u Nuitka-Watch.
  • Implementirana je analiza tipa petlje, koja će se u budućnosti koristiti za implementaciju selektivne optimizacije.
  • Dodane su optimizacije kako bi se ubrzao rad s nedijeljenim i izbjegnutim varijablama.
  • Zaobilazno rješenje za privatne funkcije poput Qt utora koji nisu imali iskrivljena imena.
  • Popravi otkrivanje pip paketa kada se koristi Nuitka.
  • Poboljšanja parsera s odlijepljenim učitavanjem za pydantic.
  • Dodane podatkovne datoteke za razne pakete, kao što su pyocd i cmsis_pack_manager.
  • Popravci za pravilno rukovanje proširenim specifikacijama tijekom izvođenja.
  • Rješenje za izbjegavanje kvarova tijekom izvođenja određenih metoda.
  • Poboljšanja u uključivanju paketa iz naredbenog retka.
  • Specifična rješenja za platforme kao što su Android, Windows i Debian.
  • Poboljšana kompatibilnost s različitim verzijama Pythona i operativnim sustavima.

konačno ako jesi zainteresiran za saznanje više o tome, možete provjeriti detalje U sljedećem linku.

Kako instalirati Nuitku na Linux?

Za one koji su zainteresirani za instalaciju Nuitke na svoj sustav, trebali biste znati da je instalacija jednostavna, samo trebate imati instaliran Python i pip sustav za upravljanje paketima.

Za instalaciju Nuitke samo pokrenite sljedeću naredbu:

pip install nuitka

Što se tiče korištenja ovog prevoditelja, možete pogledati korisnički priručnik na sljedeći link.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.