Дано:
- Ubuntu
- py2exe и pyinstaller - Python скрипт с setup.py (или еще)Как создать .exe с помощью py2exe (или pyinstaller) на Ubuntu
from distutils.core import setup
import py2exe
import os
setup(
version = "1.0",
description = 'foo',
url = "",
name = "foo",
console=[{
"script":"main.py",
"dest_base":"foo",
}],
zipfile = "shared.dll",
options = {"py2exe":{
'bundle_files': 1,
'optimize': 2,
"dll_excludes": ['MSVCP90.dll', 'msvcr71.dll', "IPHLPAPI.DLL", "NSI.dll", "WINNSI.DLL", "WTSAPI32.dll"],
"includes": ["utils"]
}}
)
Потребность:
- один EXE-файл и, возможно, некоторые .dll (я действительно не знаю)
шаги, что я сделал:
- установка PIP3 и питона 3,4 (https://askubuntu.com/questions/524399/issues-with-py2exe)
- установка py2exe для убунту "PIP3 установить py2exe"
- запустить "python3.4 setup.py py2exe" И получил следующие TRACEBACK:
Traceback (most recent call last):
File "setup.py", line 2, in <module>
import py2exe
File "/usr/local/lib/python3.4/dist-packages/py2exe/__init__.py", line 9, in <module>
patch_distutils()
File "/usr/local/lib/python3.4/dist-packages/py2exe/patch_distutils.py", line 68, in patch_distutils
from . import distutils_buildexe
File "/usr/local/lib/python3.4/dist-packages/py2exe/distutils_buildexe.py", line 91, in <module>
from . import runtime
File "/usr/local/lib/python3.4/dist-packages/py2exe/runtime.py", line 3, in <module>
from .dllfinder import Scanner, pydll
File "/usr/local/lib/python3.4/dist-packages/py2exe/dllfinder.py", line 5, in <module>
from . import _wapi
File "/usr/local/lib/python3.4/dist-packages/py2exe/_wapi.py", line 4, in <module>
_kernel32 = WinDLL("kernel32")
NameError: name 'WinDLL' is not defined
- настройки pyinstaller для убунту (https://github.com/pyinstaller/pyinstaller/wiki)
- запустите «pyinstaller setup.py» (так же, как «pyinstaller -w setup.py») и достал в dist папку много файлов с расширением .so и одним файлом «setup» без расширения
Что я делаю неправильно?
Как я могу получить файл .exe под Ubuntu?
Возможно ли это?
PS: Я читал Python executables: py2exe or PyInstaller? не нашел ответа.
Почему вы хотите создать '.exe' файл на Ubuntu? Не будет ли лучше делать это на Windows? – ForceBru
Я хочу создать .exe на Ubuntu и потянуть на машину Windows. Да, его можно создать в Windows, но не в моем случае (не спрашивайте меня, почему) –
Если бы я был вами, я бы использовал виртуальную машину. Если это не вариант, попробуйте установить windows python в вине. Вы бы убили много времени, если попытаетесь сделать это любым другим способом. –