pyinstallerのインストール、単純なパッケージングは次を参照できます:https ://blog.csdn.net/qq_40587575/article/details/85076934
-------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ------------
pyinstaller [パラメータ] [packaged.pyするプログラム]
パラメータの説明:
-icon =アイコンパス
-F exeファイルにパッケージ化
-wウィンドウを
使用、コンソールなし-c コンソールを使用、ウィンドウなし-D
exeおよびその他の依存ファイルを含むディレクトリを作成
pyinstaller -hパラメータを表示
重要なポイント:
初めてコンパイルを開始するときは、直接使用しないでください:pyinstaller -F -w demo.py
pyinstaller -F -c demo.pyこの時点で、パッケージ化が完了したら、exeをクリックしてファイルを実行します。エラーがある場合は、コンソールに表示されます。エラー後にコンソールが点滅したため、これはスクリーンショットの準備です。
エラーメッセージ: 'typedefs'という名前のモジュールはありません
現時点では、importErrorのエラーメッセージが表示されます。現時点ではtypedefsモジュールが見つからないため、プログラムはスクリプトxxxxの実行に失敗しましたを直接報告します
元のディストリビューション、ビルドファイル、スペックファイルを削除し、追加します。
pyinstaller -F -c QTimerTest.py --hidden-import sklearn.neighbors.typedefs
または
Hiddenimports = []を.specファイルに直接追加:最後のコードとして
エラーメッセージ:「sklearn.neighbors.quad_tree」という名前のモジュールはありません
エラーメッセージ: 'pywt._extendions._cwt'という名前のモジュールはありません
上記の問題を要約するには、次のコマンドを使用できます。
pyinstaller -F -c QTimerTest.py --hidden-import sklearn.neighbors.typedefs --hidden-import sklearn.neighbors.quad_tree --hidden-import pywt._extensions._cwt --add-data = xgboost; xgboost
それでもプログラムがエラーを報告する場合は、同じ方法を使用して理由を見つけることができます。理由がある場合は、通常、答えを見つけることができます。。。。。。。。。。。
参照:
1. XGBoostの問題の解決策:
https://my.oschina.net/u/1241965/blog/2997992
2.pywtウェーブレットパッケージライブラリソリューション:
https://stackoverflow.com/questions/41998403/pyinstaller-importerror-on-pywt-ctw-module
3. Sklearnソリューション:
https://www.smwenku.com/a/5b86bb8a2b71775d1cd5c2d8/zh-cn/
http://www.voidcn.com/article/p-nqtjgive-bms.html
pyinstallerによって生成された.specファイルで、次のように変更します。
これは主に非表示のインポートです。主にこの問題のため、pyinstallerはライブラリの場所を見つけることができません。