安裝 Nuitka
python -m pip install nuitka python -m nuitka --version
安裝依賴包
apt-get install ccache fuse patchelf
注意
有些包的版本要注意
opencv=4.2.0.32 nuitka=0.7.5
使用
--show-progress:展示過程 --show-memory:顯示內存
--standalone #獨立文件,這是必須的
--follow-imports #把開頭import的文件或者模塊一起打包
--recurse-all #所有的資源文件 這個也選上
--recurse-not-to=numpy,jinja2 #不編譯的模塊,防止速度會更慢
--output-dir=out #生成exe到out文件夾下面去
--plugin-enable=pylint-warnings #報警信息
--nofollow-imports # 所有的import不編譯,交給python3x.dll執行
--enable-plugin=numpy 指定特殊的包
--remove-output 生成模塊或 exe 文件之后刪除生成目錄
--no-pyi-file 不要為創建的擴展模塊創建 .pyi 文件
--follow-imports 將所有import 包找到打進去
--standalone 打成一個獨立的分發環境 輸出文件夾不是一個可執行的文件
--onefile 打包成一個文件
--nofollow-import-to 指定包不打進去
--module 打包成一個整的.so文件 可導入使用 注意生成的這個動態庫只能被相同版本的 CPython 導入
--disable-ccache 禁用緩存
--prefer-source-code 從源碼開始
python -m nuitka ffmpeg.py
python -m nuitka --module --remove-output --no-pyi-file --include-package=指定包名 ../../包的路徑
將單個文件打包成.so文件
python -m nuitka --module program.py