先输入:pip install pyinstaller
下载一个pyinstaller
然后输入:
模板:
pyinstaller --onefile --noconsole
^ --hidden-import=ultralytics.yolo.v8.detect
^ --hidden-import=serial.serialcli
^ --add-data="yolov8n.pt;."
^ --add-data="C:/Python310/Lib/site-packages/cv2/opencv_videoio_ffmpeg420_64.dll;."
^ --collect-all=ultralytics
^ --collect-all=serial
^ --upx-dir=C:\upx
^ your_script.py
要根据模板把他改成你自己的地址然后改装把回车换行删掉
我自己修改该后为:pyinstaller --onefile --noconsole ^ --hidden-import=serial.serialcli ^ --add-data="D:/anaconda3/envs/test/Lib/site-packages/cv2/opencv_videoio_ffmpeg4110_64.dll;." ^ --collect-all=ultralytics ^ --collect-all=serial ^ --upx-dir=C:\upx ^ main.py
记住这个main.py要在当前文件夹
这其中遇到了一个问题:exe找不到序列数
这是
这个错误通常是由于动态链接库(DLL)版本不兼容导致的。 序数 380 是指 DLL 中的一个函数,但是程序在加载 DLL 时找不到这个函数。 确认 DLL 是否存在,并且与程序所需的版本匹配。 确认 DLL 和程序是否都是 32 位或 64 位应用程序,并且匹配。 尝试重新安装程序或 DLL,可能会修复文件丢失或损坏的问题。 确认程序是否正确地设置了 DLL 的搜索路径。
我的是因为cv2没配对
# 查找具体DLL路径 python -c "import cv2; print(cv2.__file__)" # 添加打包参数 --add-data="C:/PythonXX/Lib/site-packages/cv2/opencv_videoio_ffmpeg*.dll;."