您的位置:首页 > 编程语言 > PHP开发

关于使用pyinstaller 打包带有matplotlib 等出现UnicodeDecodeError解决方法

2017-02-21 15:11 876 查看
转自:http://blog.csdn.net/u011529752/article/details/54892488

环境 win7 64位旗舰版 

python3.4 anaconda 

在含有 matplotlib的脚本工程中,用pyinstaller将其打包,在loading最后一个包zmq.py时出现错误:
out = out.decode(encoding)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 121: invalid start byte
1
2
1
2

查了一圈终于找到原因:

在zmq包 \Lib\site-packages\zmq\backend\cffi\__pycache__\_cffi_ext.c 文件中,声明了< sys/un.h >头文件,而在windows下没有这个文件
pyinstaller在分析< sys/un.h >的时候出错,并返回错误信息
错误信息的格式是基于当前控制台的编码格式,不同的操作系统编码格式不同,而一般代码都使用utf-8编码

解决思路,改变控制台的编码格式为utf-8 

解决方法,在控制台中输入 chcp 65001,然后再使用pyinstaller -F -w xxx.py 打包成功。

参考 
解决方法网址
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐