Pythonの仮想環境をサクッと用意してPyinstallerで超軽量なexeファイルを作成する【Python】
Pyinstallerを使ってexe化したら超絶重くて萎えた・・・誰しもがこんな経験ありますよね?
今回はPythonの仮想環境(venv)を使って、必要最低限のライブラリのみをインストールした超軽量なexeファイルを作成する手順を共有します。
目次
手順
仮想環境の作成
大昔()は仮想環境作成に若干時間がかかったものですが、現代のPythonは以下から仮想環境を立ち上げられます。
python -m venv myenv
仮想環境を動かしたいディレクトリで実行しましょう。
ちなみにmyenvの部分は任意で、仮想環境名を表します。
仮想環境の有効化
仮想環境を立ち上げたら、以下から有効化します。
myenv\Scripts\activate
macOSやLinux環境は若干異なります。
source myenv/bin/activate
PyInstallerのインストール
肝心のpyinstallerをインストールします。
pip install pyinstaller
その他必要なライブラリのインストール
他にインストールするライブラリがあれば、ここでインストールしておきます。
pip install openpyxl
ちなみにpandasやnumpyを入れるとexeファイルの起動が遅くなりがちなので、可能ならpandas, numpyを使わないプログラムにしたいところです。
PyInstallerでexeファイルを作成
以下からexeファイルを作成します。
pyinstaller --onefile main.py
実行するとdistフォルダにexeファイルが生成されます。
引数の説明やアイコン設定方法などは、気が向いたら記事にします。
仮想環境を無効化する
最後に仮想環境を閉じておきます。
deactivate
これ以降、ここで使った仮想環境を使わないのであれば、フォルダ内に作成されたmyenvフォルダを削除して大丈夫です。
エラー対策
エラーの内容
こんな感じで変なエラーが出ることがあります。
myenv\Scripts\activate : このシステムではスクリプトの実行が無効になっているため、ファイル C:\XXX\myenv\Scripts\Activate.ps1 を読み込むことができません。
解決策
そんなときは、以下の流れで解決します。
- PowerShellを管理者として実行する
- 実行ポリシーを変更する
→"Set-ExecutionPolicy RemoteSigned"を実行 - 確認メッセージが表示されたら、「A」または「Y」を入力して許可する
- 再度仮想環境を有効化する
以上です。
ディスカッション
コメント一覧
まだ、コメントがありません