使用Auto Py-to-Exe打包Python应用遇依赖缺失错误求助
解决Auto Py-to-Exe编译Python应用时的依赖库缺失警告
问题概述
使用Auto Py-to-Exe编译包含Kivy和TensorFlow的Python应用时,出现两类依赖库缺失警告:一类是Kivy的GStreamer相关dll,另一类是TensorFlow的_pywrap_tensorflow_internal.pyd。已尝试重装相关包但无效。
环境依赖包列表
| Package | Version |
|---|---|
| absl-py | 1.3.0 |
| astunparse | 1.6.3 |
| attrs | 22.1.0 |
| cachetools | 5.2.0 |
| certifi | 2022.9.24 |
| charset-normalizer | 2.1.1 |
| contourpy | 1.0.5 |
| cvzone | 1.5.6 |
| cycler | 0.11.0 |
| docutils | 0.19 |
| flatbuffers | 22.9.24 |
| fonttools | 4.38.0 |
| gast | 0.4.0 |
| google-auth | 2.13.0 |
| google-auth-oauthlib | 0.4.6 |
| google-pasta | 0.2.0 |
| grpcio | 1.50.0 |
| h5py | 3.7.0 |
| idna | 3.4 |
| keras | 2.10.0 |
| Keras-Preprocessing | 1.1.2 |
| Kivy | 2.1.0 |
| kivy-deps.angle | 0.3.2 |
| kivy-deps.glew | 0.3.1 |
| kivy-deps.sdl2 | 0.4.5 |
| Kivy-Garden | 0.1.5 |
| kivymd | 1.1.1 |
| kiwisolver | 1.4.4 |
| libclang | 14.0.6 |
| Markdown | 3.4.1 |
| MarkupSafe | 2.1.1 |
| matplotlib | 3.6.1 |
| mediapipe | 0.8.11 |
| numpy | 1.23.4 |
| oauthlib | 3.2.2 |
| opencv-contrib-python | 4.6.0.66 |
| opencv-python | 4.6.0.66 |
| opt-einsum | 3.3.0 |
| packaging | 21.3 |
| Pillow | 9.2.0 |
| pip | 22.3 |
| protobuf | 3.19.6 |
| pyasn1 | 0.4.8 |
| pyasn1-modules | 0.2.8 |
| Pygments | 2.13.0 |
| pyparsing | 3.0.9 |
| pypiwin32 | 223 |
| python-dateutil | 2.8.2 |
| pywin32 | 304 |
| requests | 2.28.1 |
| requests-oauthlib | 1.3.1 |
| rsa | 4.9 |
| setuptools | 63.2.0 |
| six | 1.16.0 |
| tensorboard | 2.10.1 |
| tensorboard-data-server | 0.6.1 |
| tensorboard-plugin-wit | 1.8.1 |
| tensorflow | 2.10.0 |
| tensorflow-estimator | 2.10.0 |
| tensorflow-io-gcs-filesystem | 0.27.0 |
| termcolor | 2.0.1 |
| typing_extensions | 4.4.0 |
| urllib3 | 1.26.12 |
| Werkzeug | 2.2.2 |
| wheel | 0.37.1 |
| wrapt | 1.14.1 |
错误警告信息
3848 WARNING: lib not found: gstreamer-1.0-0.dll dependency of C:\Coding\Python\lib\site-packages\kivy\lib\gstplayer\_gstplayer.cp310-win_amd64.pyd 3851 WARNING: lib not found: gobject-2.0-0.dll dependency of C:\Coding\Python\lib\site-packages\kivy\lib\gstplayer\_gstplayer.cp310-win_amd64.pyd 3853 WARNING: lib not found: glib-2.0-0.dll dependency of C:\Coding\Python\lib\site-packages\kivy\lib\gstplayer\_gstplayer.cp310-win_amd64.pyd 4274 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_utils.pyd 4316 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_transform_graph.pyd 4345 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_tfprof.pyd 4362 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_tensor_float_32_execution.pyd 4380 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_stat_summarizer.pyd 4395 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_nest.pyd 4411 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_kernel_registry.pyd 4426 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_determinism.pyd 4449 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\util\_pywrap_checkpoint_reader.pyd 4490 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\saved_model\pywrap_saved_model.pyd 4517 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\profiler\internal\_pywrap_traceme.pyd 4545 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\profiler\internal\_pywrap_profiler.pyd 4588 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\platform\_pywrap_stacktrace_handler.pyd 4628 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\lib\io\_pywrap_record_io.pyd 4654 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\lib\io\_pywrap_file_io.pyd 4682 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\grappler\_pywrap_tf_optimizer.pyd 4709 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\grappler\_pywrap_tf_item.pyd 4735 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\grappler\_pywrap_tf_cluster.pyd 4761 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_test_metrics_util.pyd 4782 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_pywrap_python_op_gen.pyd 4806 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_pywrap_python_api_parameter_converter.pyd 4832 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_pywrap_python_api_info.pyd 4851 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_pywrap_python_api_dispatcher.pyd 4886 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_proto_comparators.pyd 4911 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_op_def_util.pyd 4938 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_op_def_registry.pyd 4965 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_op_def_library_pybind.pyd 4992 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_errors_test_helper.pyd 5014 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\framework\_dtypes.pyd 5094 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\data\experimental\service\_pywrap_server_lib.pyd 5130 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\client\_pywrap_tf_session.pyd 5152 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\client\_pywrap_events_writer.pyd 5179 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\client\_pywrap_device_lib.pyd 5205 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\client\_pywrap_debug_events_writer.pyd 5540 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\lib\core\_pywrap_py_func.pyd 5552 WARNING: lib not found: _pywrap_tensorflow_internal.pyd dependency of C:\Coding\Python\lib\site-packages\tensorflow\python\lib\core\_pywrap_bfloat16.pyd
解决方案
针对Kivy的GStreamer依赖缺失
- 安装Kivy官方提供的GStreamer依赖包:
pip install kivy-deps.gstreamer - 确认依赖dll路径已加入系统PATH:
- 定位到Python环境下的
kivy_deps/gstreamer/bin目录(示例路径:C:\Coding\Python\lib\site-packages\kivy_deps\gstreamer\bin) - 将该路径添加到系统环境变量
PATH中,重启Auto Py-to-Exe后重新编译
- 定位到Python环境下的
- 手动添加dll到打包资源:
在Auto Py-to-Exe的Additional Files选项中,添加上述bin目录下的gstreamer-1.0-0.dll、gobject-2.0-0.dll、glib-2.0-0.dll,设置输出路径为应用根目录
针对TensorFlow的_pywrap_tensorflow_internal.pyd依赖缺失
- 确认文件存在性:
检查Python环境下的tensorflow/python/_pywrap_tensorflow_internal.pyd是否存在,若不存在则卸载并重新安装官方TensorFlow包:pip uninstall tensorflow -y pip install tensorflow==2.10.0 - 手动添加文件到打包资源:
在Auto Py-to-Exe的Additional Files选项中,添加_pywrap_tensorflow_internal.pyd,设置输出路径为tensorflow/python/ - 添加隐藏导入:
在Auto Py-to-Exe的Advanced选项中,找到Hidden Imports,添加以下内容:tensorflow.python._pywrap_tensorflow_internal - 尝试用PyInstaller命令行打包(更灵活):
pyinstaller --hidden-import tensorflow.python._pywrap_tensorflow_internal --onefile your_script.py - 注意:确保在激活虚拟环境后执行打包操作,避免路径混淆
内容的提问来源于stack exchange,提问作者Yoga Vendec
相关产品推荐
相关产品推荐

