19
19

NuitkaでPythonをexe化しよう

Last updated at Posted at 2023-04-18

はじめに

Pythonのexe化はなかなか悩ましい。
Nuitkaを使用することでそこそこ使えそうなexeファイルをゲットできました。

他にも有名所でPyInstaller, cx_Freezeとかがある。らしい。

完成イメージ

今回作成したアプリケーションは下記のようなもので、
画像ファイルを入力すると.icoファイルを作成してくれるものになっています。

容量は26,000kBくらい。このexeのみをコピペすればスタンドアロン使用できる。
image.png

仮想環境を使用したら9,700kBくらいまで小さくなりました。仮想環境は正義。
image.png

開くとこんな感じ
image.png

コード内で呼び出しているライブラリは次のとおり

import tkinter as tk
from tkinter import filedialog
from PIL import Image
from os.path import splitext

インストール

とりあえずnuitkaをインストール。

pip install nuitka

使い方

カレントディレクトリをPythonファイルのある場所にする。

cd フルパス

基本これを打てばexe化ができる。

nuitka ファイル名.py

が、これだけでは結局Python環境がないと動かないらしい。それを回避するために色々なオプションがある。

オプション

基本は上の通りで使用できますが、個人的な好みで以下のオプションを使用しました。

オプション 意味
--windows-disable-console 黒い画面を出さない
--standalone Python環境がないところでも動くようにする
--onefile ひとつのexeファイルにまとめる
--enable-plugin=tk-inter Tkinterをつかうおまじない
--windows-icon-from-ico="*.ico” *.icoファイルをアイコンとして使用
nuitka --windows-disable-console --standalone --onefile --enable-plugin=tk-inter --windows-icon-from-ico=“アイコンファイル.ico” ファイル名.py

その他

初回実行時(?)は色々とNuitkaから聞かれることがあるので、Yesと回答しておきましょう。

19
19
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
19