2015-02-02 2 views
0

В настоящее время я работаю над вилкой чужого проекта, написанного на языке программирования Python.Компиляция Python в приложение Windows

У меня есть доступ ко всему исходному коду, в котором я нуждаюсь, со всеми изменениями, которые я хотел сделать, и всем, «установленным», как он мне нужен.

Мой текущий шаг пытается каким-то образом скомпилировать его, поэтому он запускается как окна в автономном приложении. Я знаю, что это возможно, потому что это то, как работает исходное приложение. В настоящее время у меня есть доступ к Visual Studio с модулем расширения python, WinPython, самой основой kivy, с которой был построен графический интерфейс и т. Д.

Но я не могу понять, как это сделать. Мои беглые исследования предложили программу py2exe, но это не работает с тем, что мне нужно, на основе того, что я могу сказать.

+0

так это приложение для киви? если это так http://kivy.org/docs/guide/packaging-windows.html –

ответ

0

скопирована из http://kivy.org/docs/guide/packaging-windows.html

Создайте файл спецификации

Для этого примера, мы будем упаковывать пример touchtracer и вставлять пользовательский значок. Пример touchtracer - каталог kivy \ examples \ demo \ touchtracer, а основной файл называется main.py.

Двойной щелчок по Kivy.bat и консоль откроется.

Перейти в каталог pyinstaller 2.1 и создания начальной спецификации:

cd pyinstaller-2.1 
python pyinstaller.py --name touchtracer ..\kivy\examples\demo\touchtracer\main.py 

Вы также можете добавить файл icon.ico в папку приложения, чтобы создать иконку для исполняемого файла. Если у вас нет файла .ico, вы можете конвертировать файл icon.png в ico с помощью веб-приложения ConvertICO. Сохраните icon.ico в каталоге touchtracer и введите:

python pyinstaller.py --name touchtracer --icon ..\kivy\examples\demo\touchtracer\icon.ico ..\kivy\examples\demo\touchtracer\main.py 

Для получения дополнительных возможностей, пожалуйста, обратитесь к руководству PyInstaller 2.

Файл спецификации будет touchtracer.spec, расположенный внутри каталога pyinstaller + touchtracer. Теперь нам нужно отредактировать спецификационный файл, чтобы добавить kivy hooks для правильной сборки exe. Откройте файл спецификации с вашим любимым редактором и добавить тезисы строк в начале спецификации:

from kivy.tools.packaging.pyinstaller_hooks import install_hooks 
install_hooks(globals()) 

В функции Analysis(), удалите параметр hookspath=None. Если вы этого не сделаете, хук пакета kivy не будет использоваться вообще.

Затем вам необходимо изменить вызов COLLECT(), чтобы добавить данные для touchtracer (touchtracer.kv, particle.png, ...). Измените строку, чтобы добавить объект Tree(). Это дерево будет искать и добавлять каждый файл, находящийся в каталоге touchtracer, в ваш окончательный пакет:

coll = COLLECT(exe, Tree('../kivy/examples/demo/touchtracer/'), 
       a.binaries, 
       #... 
       ) 

Мы закончили. Ваша спецификация готова к исполнению!

Построить спецификации

Двойной щелчок по Kivy.bat

Перейти к каталогу pyinstaller и построить спецификации:

cd pyinstaller-2.1 
python pyinstaller.py touchtracer\touchtracer.spec 

Пакет будет в touchtracer \ расстояние \ touchtracer каталог.

+0

Где находится 'Kivy.bat'? –

+0

где бы вы не распаковывали киви, чтобы ... –

+0

Я узнал только на канале Kivy IRC, так как я использовал предварительно скомпилированный двоичный файл Windows Christph Golke, он не поставляется с «Kivy.bat», который является платформенным. Вместо этого мне нужно просто запустить командную оболочку нормально. –

Смежные вопросы