
У меня возникла проблема с запуском файла pyc на одной машине с Ubuntu Server 18.04.4 LTS.
Вот мой исходный код файла:
#!/root/PycharmProjects/Project/venv/bin/python3.7
print("Hi")
Когда я компилирую его в консоли Python с помощью команд:
import py_compile
py_compile.compile('test2.py')
Я получаю файл test2.cpython-37.pyc. Затем я добавляю доступ к исполнению
chmod +x test2.cpython-37.pyc
Если я побегу
./test2.cpython-37.pyc
на первой машине (Ubuntu Server 18.04.4 LTS) я получаю простое «Привет».
Но если я запущу скомпилированный подобным образом файл на другой машине с той же ОС - Ubuntu Server 18.04.4 LTS, я получу:
./test2.cpython-37.pyc: line 1: $'B\r\r': command not found
./test2.cpython-37.pyc: line 2: syntax error near unexpected token `)'
./test2.cpython-37.pyc: line 2: `z�p^=�@s
ed�dS)ZHiN)�print�rrtest2.py<module>�'
Похоже, что он читает окончания строк Windows. Но почему? Он создан, скомпилирован и запущен на машине Ubuntu.
Как решить эту проблему и запустить этот pyc-файл с правильным результатом на второй машине?
РЕДАКТИРОВАТЬ: На обеих машинах результат один и тот же
ls /proc/sys/fs/binfmt_misc
register status