Nuitka

Nuitka

Nuitka是一個Python的替代編譯器。它可以無縫地替代和擴展Python的解釋和編譯工作。現在支持CPython2.6、2..7、3.2、3.3和3.4版本。它可以執行編譯的代碼,並能用很兼容的方式將目標代碼一起編譯。

開發者可以自由的使用所有的Python模組庫和其他全部的第三方擴展庫。Nuitka可以將Python代碼編譯成C級別的程式,並像CPython調用libpython一樣去使用libpython庫去執行編譯後的程式。Nuitka的這些的最佳化工作旨在是為了能夠避免Python執行過程中的在某個環節產生的不必要的開銷。並旨在能夠是消除一些不兼容性,雖然這是一種改進了的模式,但也不是每個標準Python的bug都能模擬,例如,提供更完整的錯誤信息。

Nuitka 某些地方比 CPython 要更快些,不過目前還沒有進行全面的性能最佳化,發展空間巨大。

基本介紹

  • 軟體名稱:Nuitka
  • 開發商:Nuitka
  • 軟體平台:類Unix和Windows
  • 軟體版本:0.5.14.3
  • 更新時間:2015-10-02
  • 軟體語言:Python
  • 軟體大小:1.3M
  • 軟體授權:Free license (Apache)
代碼介紹,環境要求,命令行,許可證,用法,

代碼介紹

Nuitka是一個 Python 解釋器的替代品,支持CPython提供的代碼,可編譯 Python 代碼到 C++ 程式,並使用 libpython 來執行這些代碼,就像 CPython 一樣。兼容 Python 2.6, 2.7, 3.2, 3.3 和 3.4

環境要求

運行環境要求至少具備以下兩種東西:
1、C++編譯器:需要支持C++03的編譯器
這將意味著運行時環境至少需要以下這些編譯器:
2、Python:版本2.6,2.7或3.2,3.3,3.4
  • 作業系統:類UNIX,如、Linux;FreeBSD;NetBSD;MacOSX; 和 Windows(32位或64位)
  • 運算架構:x86,x85_64(AMD64),和ARM,或者其它的體系架構
    其他體系架構預計也正常工作,Nuitka是一般情況下是不依賴任何硬體環境的。以上這些都經過測試結果已知良好的工作環境。

命令行

不需要對環境變數進行修改,可以不改變環境的情況下在腳本目錄以外直接運行nuitka和nuitka-run。作為一個可選項,為了方便也可以將bin目錄加入到PATH中。
Nuitka和其它unix程式一樣具有—help參數選項來獲得幫助:
nuitka —help
Nuitka-run命令於Nuitka命令是相同的,但具有不同的默認選項。它可以編譯和直接執行Python腳本,使用—help可以獲得幫助:
nuitka-run —help

許可證

Nuitka遵守的是Apache開源協定許可,版本2.0版,在許可協定外不可以使用。
可以在apache下載一份許可協定,參考Apache開源許可協定2.0。

用法

用法案例1
程式編譯時包含所有所需模組
也就是,如果想遞歸的編譯一個完整的程式,並且主程式不是單獨一個的檔案,可以像以下這樣做:
nuitka --recurse-all program.py
注意還有比--recurse-all選項更加詳細的控制遞歸的。可以參考nuitka --help幫助。
如果包含外掛程式目錄,也就是遞歸無法發現的不能正常導入大人話,使用PYTHONPATH(推薦方式),可以強制要求執行檔中包含指定的目錄:
nuitka --recurse-all --recurse-directory=plugin_dir program.py

相關詞條

熱門詞條

聯絡我們