pyinstaller打包时显示无法定位程序输入点 OPENSSL_sk_new_reserve与动态连接库D:\MySQL\bin\libssl-1_1-x64.dll

运行环境:Win 10, Anaconda 虚拟环境, python3.7.1

在使用pyinstaller打包软件时经常会出现无法定位程序输入点的问题,上网搜索了很多但都不能解决我的问题,最终结合自己的经验总结出一些值得参考的解决方法给后来人。因为我是使用的anaconda虚拟环境,所以以下均说法均以这个为前提,如果没有使用anaconda也可以看一看这篇文章没准能得到启发。

一、其他人的方法

其他人的办法大体上都是将 DLLs\libssl-1_1-x64.dll 文件复制到 Library\bin 中覆盖掉 libssl-1_1-x64.dll文件,或者重新安装OpenSSL等等,但是我的DLLs文件夹中根本就没有libssl-1_1-x64.dll文件,所以直接陷入迷茫,好在有GPT和我五年的python使用经验找到了问题的根源。

二、我的解决办法

首先介绍一下我的电脑环境,我的C盘上安装了一个python3.9,D盘上安装了anaconda,而我的程序是在anaconda虚拟环境上搭建的。另外,我的python3.9也有安装pyinstaller

我的问题出在打包前没有激活虚拟环境,然后在打包时报告了‘动态连接库’的错误,最终导致打包好的程序运行失败。只要在打包前激活虚拟环境,打包好的程序就可以正常运行了。

三、总结

在使用pyinstaller时最好是在哪个虚拟环境下打包就在哪个虚拟环境下安装pyinstaller,如果有十个程序需要打包,这十个程序分别使用不同的虚拟环境,那么就需要为这些不同的虚拟环境分别都安装pyinstaller,只有这样pyinstaller才能正确找到运行程序需要的外部库文件。否则系统会自动寻找一个合适的pyinstaller来打包程序,而我的程序则是系统自动选择了我的python3.9下的pyinstaller打包的程序,如果没有合适的pyinstaller我也不知道会发生什么,但总归不是好结果。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值