打包paddle 运行时出现RuntimeError: (PreconditionNotMet) 错误的解决

一、问题描述

一个自动化操作的项目,使用了paddle,由于第一次用pyinstaller打包paddle项目(为什么不用nuitka?打包时间太长啦,遇到问题解决一次,时间都非常的长,无奈只把自己开发的模块用nuitka进行了打包,主程序用了pyinstaller),所以遇到了不少坑,前后整了三天,才把这个问题彻底解决,由于我用的是win10系统,最主要的问题在下面这个。

RuntimeError: (PreconditionNotMet) The third-party dynamic library (mklml.dll) that Paddle depends on is not configured correctly. (error code is 126)

Suggestions:

  1. Check if the third-party dynamic library (e.g. CUDA, CUDNN) is installed correctly and its version is matched with paddlepaddle you installed.

  2. Configure third-party dynamic library environment variables as follows:

  • Linux: set LD_LIBRARY_PATH by `export LD_LIBRARY_PATH=...`

  • Windows: set PATH by `set PATH=XXX; (at ..\paddle\phi\backends\dynload\dynamic_loader.cc:312)

二、解决过程

针对上面这个问题,在网上找了不少资料,最后通过以下方法解决了上面的问题。

找到paddle\libs,将里面的dll文件全部复制到打包出的程序文件夹内,再运行程序。

看似很水哈,但这种错误提示,往往就是一层窗户纸。

复制到这个位置,也就是项目打包出来的那个程序同目录下。

现在再次运行程序,没有出现上面提示的RuntimeError错误,说明上面的问题已得到解决。

但出现下面的错误:FileNotFoundError

现在集中精力解决这个问题。

这个错误的提示是:FileNotFoundError:[Errno 2] No such file or directory: 'D:\\00_unfiled_work\\240302-cloudphone_script\\dist\\automation\\_internal\\paddleocr\\tools/init.py'

12540\] Failed to execute script 'automation' due to unhandled exception! 我们试着找到这个文件夹,把整个文件夹下的所有都复制到提示位置 ![](https://file.jishuzhan.net/article/1768775249710551041/50210131eb82350ed73aa1e148f12b0e.webp) 不知道为什么,同一个python10,一部分安装在了AppData的Roming文件夹下面,一个安装在了Local文件夹下面。 不去管它。现在将这个paddleocr文件夹整个复制到目标程序的_internal文件夹下 ![](https://file.jishuzhan.net/article/1768775249710551041/af31e939670c788de1d02a02dd12fa7d.webp) 运行后继续报错 ![](https://file.jishuzhan.net/article/1768775249710551041/231bfb5669cb27a140b2d767ae9c9cf9.webp) 找到这个文件夹,复制到目标文件夹 ![](https://file.jishuzhan.net/article/1768775249710551041/2d434256e1f798a5600f6effd65c912a.webp) 运行,出现下面提示 ![](https://file.jishuzhan.net/article/1768775249710551041/97d9b45616d4121cd6f9dcbf59b9f2ad.webp) 再来,找到pyclipper拷贝过来 ![](https://file.jishuzhan.net/article/1768775249710551041/7f7770ab8104d46c654e608c5f3b43da.webp) 再运行,就这样,缺什么包,找什么包,直到能正常运行即可。 ## 三、小结 pyinstaller 打包 paddle项目,出现上面的错误,主要是由于打包不完全造成的。由于这是个小项目,开发的时候一时偷懒,就没有建立和使用虚拟环境,如果建立和使用虚拟环境,在打包的时候,就不易出现丢包的现象,即使丢包,查找相应包,也比较容易。

相关推荐
Juchecar21 分钟前
分析:将现代开源浏览器的JavaScript引擎更换为Python的可行性与操作
前端·javascript·python
科大饭桶23 分钟前
昇腾AI自学Day2-- 深度学习基础工具与数学
人工智能·pytorch·python·深度学习·numpy
天才测试猿2 小时前
常见的Jmeter压测问题
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·压力测试
mortimer2 小时前
一次与“顽固”外部程序的艰难交锋:subprocess 调用exe踩坑实录
windows·python·ai编程
来自天蝎座的孙孙4 小时前
洛谷P1595讲解(加强版)+错排讲解
python·算法
张子夜 iiii5 小时前
机器学习算法系列专栏:主成分分析(PCA)降维算法(初学者)
人工智能·python·算法·机器学习
跟橙姐学代码6 小时前
学Python像学做人:从基础语法到人生哲理的成长之路
前端·python
Keying,,,,6 小时前
力扣hot100 | 矩阵 | 73. 矩阵置零、54. 螺旋矩阵、48. 旋转图像、240. 搜索二维矩阵 II
python·算法·leetcode·矩阵
桃源学社(接毕设)6 小时前
基于人工智能和物联网融合跌倒监控系统(LW+源码+讲解+部署)
人工智能·python·单片机·yolov8
yunhuibin7 小时前
pycharm2025导入anaconda创建的各个AI环境
人工智能·python