pythonファイルをexe化しようとすると、使うライブラリによっては環境に含まれるライブラリを全部含めてexe化してしまいます。
無駄に容量を食わないように、仮想環境を作って必要ライブラリだけをインストールした状態でexe化するのが王道となります。
また、開発の用途によっては使用するライブラリ群も大きく変わってきますし、バージョンに依存した処理を書くことも多数あると思います。
このように、要する環境によって使い分けたい場合に仮想環境が役に立ちます。
pipenvを使う
インストール
pip install pipenv
でpipenvをインストールします。
インストールに失敗する場合は以下記事も参考にしてみてください。
pip installで「Could not install packages due to an OSError」が出た時の対処 - 今からでも間に合う
仮想環境用のフォルダを作る
ここでは、適当にvm
というフォルダを作りました。
作ったフォルダに移動します。
仮想環境フォルダで環境を構築する
pipenv python 3.11
pipenv shell
pipenv install [required package]
仮想環境の準備はこれで完了です。
環境の違いの結果を確認する
通常利用環境と、必要ライブラリだけに絞ってインストールした仮想環境で、それぞれ同じコードに対してpyinstallerでexeを作成してみました。
その容量差分は以下のようになりました。
容量 | |
---|---|
通常環境 | 61.1MB |
仮想環境 | 49.8MB |
そもそもがでかいというのはありますが、その中でも10MB以上の差が出ているようです。
仮想環境から抜ける
pipenv shell
で仮想環境に入った状態になっているので、シンプルにexit
するだけでOKです。
おしまい
これを知るまでさんざん自由にライブラリインストールしてきてしまったので一度棚卸します。