一 .py文件编译成二进制.pyd文件

1.环境准备

①Anaconda 3.5,PyTorch环境搭建
转自: PyTorch环境搭建.
②可能遇到的问题解决:anaconda打不开

2.测试

进入cython_test路径下,终端运行命令

python setup.py build_ext --inplace

删除test.py,测试结果

python use_test.py

windows打包exe教程直接看第二部分↓

二.windows下使用pyinstaller 打包成exe

1.环境准备

  • pyinstaller安装
conda install pyinstaller
  • 打包exe
pyinstaller -F xxx.py

2.出现报错相应的解决方法

  • RecursionError: maximum recursion depth exceeded
    解决方法来源
    pyinstaller 之后会生成一个和xxx.py文件对一个的 xxx.spec 文件
    打开xxx.spec文件,在行首导入sys包,然后设置一下递归调用的限制次数,可以尽量大一点,我这里设置100万次后就没有报错了
# -*- mode: python ; coding: utf-8 -*-
import sys
sys.setrecursionlimit(100000)

重新打包xxx.spec

pyinstaller -F --noupx xxx.spec
  • UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xce in position 122: invalid continuation byte
    解决方法来源
    解决办法:在你打包的命令行中先输入chcp 65001 然后再输入打包命令。
  • WARNING: file already exists but should not: C:\Users\ADMINI~1\AppData\Local\Temp_MEI130922\torch_C.cp38-win_amd64.pyd
    转自
    解决方法:
    pyinstaller 之后会生成一个和xxx.py文件对一个的 xxx.spec 文件
    打开xxx.spec文件,加入以下代码
for d in a.datas:if '_C.cp38-win_amd64.pyd' in d[0]:a.datas.remove(d)break

插入的位置

再次运行

pyinstaller -F --noupx xxx.spec
  • 生成的exe报错


    解决方法
    使用如下命令时不会报错,但生成的exe稍大一些
pyinstaller -F --noupx xxx.py
  • 生成的exe报错Intel MKL FATAL ERROR: Cannot load mkl_intel_thread.dll
    转自
    解决方法:
    C:\Users\用户名\Anaconda3\Library\bin 文件夹中 mkl_ 开头的文件和libiomp5md.dll拷贝到 python 的根目录下(与 python.exe 同目录)
  • 其他问题
    打包可能会出现图片等资源丢失,将缺少的文件放置到打包后的同级目录下即可。

3.参考文章

pyinstaller打包exe详细教程及命令参考
pyinstaller 完美解决打包图片等资源的问题
Pyinstaller库官方文档部分翻译

python源码保护pyinstaller 打包exe运行成功 pytorch环境相关推荐

  1. docker保护python源码_Tensorflow在Docker中运行和源码编译

    本文分享在在Docker中运行Tensorflow和进行源码编译的方法和步骤,包括:编译.构建docker镜像.创建和运行Docker容器.部署完的容器可以通过Jupyter Notebook进行访问 ...

  2. python 源码保护_Python代码保护

    Python等解释性脚本语言都需要源码明文存储,所以有两种情况需要考虑代码保护的问题: 代码逻辑的保护:代码本身有版权或者不能公开源代码 涉及用户名.密码等关键信息的配置 代码保护方法 Python代 ...

  3. python failed to execute_PyQt5 Pyinstaller 打包 exe 提示 failed to execute script

    系统环境为:win7 32 位虚拟机 python 3.5.2 pyinstaller 3.3.1 PyQt5.9 python 文件在未打包时可运行 但是-w 打包后提示: failed to ex ...

  4. 基于SpringBoot+Vue 实现准妈妈孕期交流平台【源码+论文+演示视频+包运行成功】

    您好,我是码农飞哥(wei158556),感谢您阅读本文,欢迎一键三连哦.

  5. 计算机专业毕业论文java毕业设计开题报告SSM项目源码幼儿园信息管理系统[包运行成功]

  6. 基于SpringBoot+Vue的校园交友网站的设计与实现【源码+论文+演示视频+包运行成功】

    博主介绍:专注于Java技术领域和毕业项目实战

  7. 含文档+PPT+源码等]精品基于SpringCloud实现的商品服务系统-微服务毕业设计项目源码-分布式毕设项目[包运行成功]

  8. 基于java+SpringBoot+vue+B/S的酒店管理系统设计与实现【源码+论文+演示视频+包运行成功】

    博主介绍:专注于Java技术领域和毕业项目实战

  9. essential c++源码_Goldenmask - 一键化保护你的 Python 源码

    项目地址: https://github.com/youngquan/goldenmask​github.com Goldenmask 直译为金色的罩子,灵感来自"金钟罩"的&qu ...

  10. Python文件用pyinstaller打包成.exe文件后如何获取Python源码(Python文件反编译)

    此文章自己做个学习记录,也希望对跟我有一样困扰的同学一些帮助! 使用到的工具下载链接我都已经附上,点击下面蓝色字体可直接下载: 1.pyinstxtractor.py 2.wxMEDIT 3.在线编译 ...

最新文章

  1. c语言x在二进制表示下1的个数,算法:计算十进制数字在二进制表示1的个数,...
  2. 科学:螳螂虾大脑拥有记忆和学习中心
  3. Linux网络流量监控Iftop安装
  4. Visual Studio .NET、.NET Framework和C#之间的联系
  5. django图片上传到oss_django 配置阿里云OSS存储media文件的例子
  6. 山东鲁能轨道智能巡检机器人_温湿度传感器在轨道巡检机器人中的应用
  7. 倒序存放数组java_Java集合大全Map,Set,List
  8. 桩筏有限元中的弹性板计算_PKPM2010年11月结构技术问题汇总
  9. encode_chunked=req.has_header(‘Transfer-encoding‘))问题解决方法
  10. 利用 Zabbix 监控数据库文件大小
  11. 网课题库系统公众号功能
  12. bypass-wts-waf
  13. 天体观测位置的计算--方位角和俯仰角
  14. 等保2.0.第十一章.等保2.0实战(上)
  15. 企业管理不可忽视“工作日志”
  16. 智能扭矩系统——SunTorque智能扭矩系统,引领拧紧工艺新变革!
  17. 软件工程毕业设计课题(44)微信小程序毕业设计JAVA医院预约挂号小程序系统毕设作品项目
  18. 广东迅视资管 新媒介在文艺领域的影响:如墨汁滴入水中氤氲开来
  19. Java类名的命名规则
  20. android查询联系人的电话号码,android通讯录根据手机号码查询姓名

热门文章

  1. 四川眉山中院宣判两起特大跨国电信诈骗案
  2. 倍加福光电传感器OBE10M-18GM60-SE5-V1
  3. Android如何实现超级棒的沉浸式体验
  4. 没所谓移动开发寒冬,不过是大鱼吃小鱼
  5. 社区专家谈 12306
  6. 方差、标准差、均方差、均方根值(RMS)、均方根误差(RMSE)
  7. 「黑科技」盘点那些脑洞大开的人类设计的“异形”机器人
  8. Aix平台打开异步io需要fileset支持
  9. 用集成移位寄存器74194设计一个模4的环形计数器电路
  10. Android 源码编译详解【一】:服务器硬件配置及机型推荐-2016/06