目次
pyinsatller -F -w main.py
問題 1: .exe ファイルが大きすぎます
パッケージ化コマンド:
pyinsatller -F -w main.py
回避策:必要なライブラリが再インストールされた
新しい仮想環境を作成しました。
仮想環境の依存関係をインストールします。
pip install virtualenv
pip install virtualenvwrapper-win
python.exe がある場所を見つけて仮想環境を作成します
mkvirtualenv -p="E:\\Python\python.exe" pyinenv
パッケージ化する必要があるファイルディレクトリに cmd を入力し、次のコマンドを使用して仮想環境に切り替えます。
workon pyinenv
コマンドを使用してpython main.py
パッケージ化するメインプログラムを実行し、ポップアップに従って不足しているモジュールを順番にダウンロードします。
注: pyqt5 と pyqt5-tools、および pyinstaller などを再インストールする必要がありますが、これらの操作中にエラーは報告されません。
ダウンロードの際、torch の cuda がメモリを多く占有していることが分かり、コード内で cuda を使って高速化している部分をキャンセルして、torch-cuda を削除し、cuda や torchvision などを含まない torch を再ダウンロードしました。
参考:パッケージ化されたexeファイルが大きすぎる問題の解決
質問 2: pyinstaller は opencv-python バージョンと互換性がありません
パッケージ化が完了すると、以下の画面が表示されます。
解決策: opencv-python のバージョンを変更するpip install opencv-python==4.5.1.48
私は次のように python と pyinstaller のバージョンを使用しています。
PyInstaller: 5.1
Python: 3.9.0
opencv-python:4.5.1.48
質問 3: ファイルを開くと、***.pyd ファイルが既に存在するというメッセージが表示されます。
a と p の間に次のコードを追加します。
for b in a.binaries.copy(): # Traver the binaries.
for d in a.datas: # Traverse the datas.
if b[1].endswith(d[0]): # If duplicate found.
a.binaries.remove(b) # Remove the duplicate.
break
操作後、次のパッケージ化コマンドに置き換えます。
pyinstaller main.spec
参考:Pyinstaller --onefile 警告ファイルはすでに存在しますが、すべき
ではありません参考:警告: ファイルはすでに存在しますが、すべきではありません: C:\Users\workAI\AppData\Local\Temp_MEI132522\torch_C 参考
:【Python】Python 打包exe报错makespec オプションがありません.spec ファイルが指定された場合に有効です
質問 4: pyinstaller パッケージを作成すると、UPX が利用できないというメッセージが表示されます。
解決策:
(1) 公式 Web サイト https://upx.github.io/ にアクセスし、UPX をダウンロードします (私のバージョンは Windows 64 バージョンです)。ダウンロードは圧縮パッケージです。
(2) 解凍してupx.exeファイルを取得します。
(3) exe ファイルをpyinstaller.exe ディレクトリにコピーします。私のディレクトリは C:\Users\HASEE\Envs\pyinenv\Scripts です。
参考: pyinstaller パッケージでは UPX は利用できません
最後に、梱包が完了し、正常に使用できるようになります。(梱包作業にかかる時間は約4分)
別の: CUDA の構成を成功させる方法を表示する
(1) cmd では、cuda 環境の設定に注意します。ここでは pytorch 環境にいるので、最初に pytorch 環境を有効にする必要があります。
(2) Pythonファイルに入力
import torch
print(torch.cuda.is_available())
True を返すと、構成が完了したことを示します。
CUDA と pytorch を事前にインストールするための参考資料 参考
:
1: CUDA バージョンとグラフィックス カード ドライバー バージョンの比較表 (2022.10.26 に更新 - CUDA11.8)
2:インストールされている CUDA バージョンを確認する
3: win10+Anaconda+pytorch+CUDA11.1 詳細インストールガイド
4: [Pytorch] pytorch のインストール (cuda の詳細なインストールチュートリアルを含む)
yi , j = ∑ m = 0 h − 1 ∑ n = 0 w − 1 ∑ k = 0 c − 1 wm , n , kxi + m , j + n , k + b y_{i,j}=\sum_{ m=0}^{h-1}\sum_{n=0}^{w-1}\sum_{k=0}^{c-1}w_{m,n,k}x_{i+m, j+n,k}+by私、 j=∑m = 0h − 1∑n = 0w − 1∑k = 0c − 1wm 、n 、 kバツi + m 、j + n 、 k+b