我使用pyinstaller 3.5从python脚本创建可执行文件。编译我用过的:
pyinstaller -F --onefile --add-data: my_script.py
我正在尝试将此可执行文件作为systemd服务运行。服务文件是:
***[Unit]
Description= a description
[Service]
Type=simple
Restart=on-failure
User=root
RestartSec=3
ExecStart=/usr/bin/python3 path/to/my_script
[Install]
WantedBy=multi-user.target***
当我通过systemctl启动服务启动服务时,出现以下错误:
:SyntaxError: Non-UTF-8 code starting with '\xe8' in file /path/to/my_script on line 2, but no
encoding declared; see http://python.org/dev/peps/pep-0263/ for details
服务正在退出,状态为1 / FAILURE
当我运行my_script.py服务时,一切正常。
我在代码中不使用非utf-8字符。
我试图添加各种编码定义。例如:
***\# -*- coding: latin-1 -*-***
我尝试注释代码中的几乎每一行以找到源,但是我一直收到错误。 我在这里Error when using pyinstaller: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff遇到了类似的问题,但是他们建议的解决方案对我没有帮助
有人知道如何解决吗?
我正在使用python 3.6.9
Linux red hat 7.5