Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 27, 2012 15:48:49

MantisABC
Зарегистрирован: 2012-04-04
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

пробовал cxFreeze, py2exe - работают, ура.

PyInstaller - доберусь еще.

Но “это же не наш метод” (с) Прикл. Шурика ! это все, как я понял - “врапперы”, то бишь они в *.exe пихают интерпретатор Питона и сам код *.py потом разворачивают на ходу и запускают.

Хочу “нормальный” *.exe - как сделать ? ( знал раньше asm x86, Паскаль, Дельфи ),

нашел PyAstra, ну, думаю сделаю из *.py ассемблер, а там соберу *.exe. так PyAstra делает АСМ, как я понял, для микроконтроллеров, а не для норм x86

понял, что можно как-то через Cython, но как тоже не понятно.
Понимаю, что можно через C/C++ проблема в том, что я их не знаю, а *.exe хочется сейчас, а не
неизвестно когда после обучения C. ( мне еще Python / Django надо доучить :-) )

Какие есть варианты ?





Офлайн

#2 Апрель 27, 2012 15:52:35

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

nuitka



Офлайн

#3 Апрель 27, 2012 16:10:37

MantisABC
Зарегистрирован: 2012-04-04
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

спасибо, нашел, бегу пробовать

http://nuitka.net/blog/nuitka-a-python-compiler/

Офлайн

#4 Апрель 27, 2012 17:32:20

MantisABC
Зарегистрирован: 2012-04-04
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

Все равно спасибо ! про nuitka не знал.

думаю nuitka тоже враппер. из 4 строчек программы:
=========== начало цитаты ==============
#
#
print(“Game over”)
input(“\n\nPress the enter key to exit.”)
==================== eof цитаты =======

сделало *.exe аж на 300 kb, а *.exe после запуска после вывода положенного выдало сообщение об ошибке в чисто Питоновском стиле:
(nuitka.bat была в python 2.7 )
===============================
Traceback (most recent call last):
File “…. ”, line 4, in <module>
File “<string>”, line 0
^
SyntaxError: unexpected EOF while parsing
===============================

Не везет Питону с компиляторами, вот и Wirbel отказался :-)

кстати, запускал “C:\Python27\Scripts\nuitka-python.bat –exe –execute one.py ”
из под Far-а, так фар повесился. А потом отдельно из под другого фара сделанный *.exe запустил - запускается, никого не вешая.

Отредактировано MantisABC (Апрель 27, 2012 17:36:05)

Офлайн

#5 Апрель 27, 2012 17:39:52

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

MantisABC
сделало *.exe аж на 300 kb
Аж 300kb - это не враппер, или не совсем враппер, а то, что ошибки - питоновский трейсбек, так это ж всяко лучше, чем, например:
application exited with code 1
Если хотите разобраться, гляньте, как он строит приложение. В папочке build.<appname> можно увидеть C++ код.

Да, он использует libpython для обработки питоновских конструкций, но автор в каждом релизе все ослабляет зависимость от этой либы. Как по мне, такой вот “инкрементальный” подход может дать хороший результат. Продукт еще довольно новый, версия 0.3, дальше, по идее, должно быть лучше.

p.s.
Wirbel 2 года как умер и поднять его пока никто не планирует



Офлайн

#6 Апрель 27, 2012 22:02:20

sanodin
От:
Зарегистрирован: 2011-06-16
Сообщения: 515
Репутация: +  31  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

У меня ошибку выдает

Traceback (most recent call last):
File "C:\Python27\Scripts\nuitka-pytho
from nuitka import Options
File "C:\Python27\Scripts\nuitka.py",
from nuitka import Options
ImportError: cannot import name Options

Офлайн

#7 Апрель 27, 2012 23:24:45

beelze
Зарегистрирован: 2012-04-11
Сообщения: 104
Репутация: +  3  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

MantisABC, а зачем требуется именно “нормальный” *.exe?

нуитка пишет, что:
What it gives:
It is faster? Not really. Compiling takes a lot time, although it may be a one time action. At run time, performance comparisons with CPython show how well optimized CPython bytecode is interpreted. The compiled program is somewhat faster, currently pystone runs at 258% speed. But most often you will not yet notice any significant difference


Так стоит оно того или нет? И в каких случаях? Или просто «чтобы было»?

Офлайн

#8 Апрель 28, 2012 20:49:32

sanodin
От:
Зарегистрирован: 2011-06-16
Сообщения: 515
Репутация: +  31  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

Уже второй день бьюсь…ошибка таже

Traceback (most recent call last):
File "C:\Python27\Scripts\nuitka-pytho
from nuitka import Options
File "C:\Python27\Scripts\nuitka.py",
from nuitka import Options
ImportError: cannot import name Options

не пойму,что еще надо…модуль есть а импорт сделать не может?

MantisABC,Вы подробней процесс описать можете?Вроде все понятно,но может где то туплю.

Отредактировано sanodin (Апрель 28, 2012 21:55:28)

Офлайн

#9 Апрель 30, 2012 10:43:06

MantisABC
Зарегистрирован: 2012-04-04
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

regall
MantisABC
сделало *.exe аж на 300 kb
Аж 300kb - это не враппер, или не совсем враппер, а то, что ошибки - питоновский трейсбек, так это ж всяко лучше, чем, например:
application exited with code 1
Если хотите разобраться, гляньте, как он строит приложение. В папочке build.<appname> можно увидеть C++ код.

Да, он использует libpython для обработки питоновских конструкций, но автор в каждом релизе все ослабляет зависимость от этой либы. Как по мне, такой вот “инкрементальный” подход может дать хороший результат. Продукт еще довольно новый, версия 0.3, дальше, по идее, должно быть лучше.

p.s.
Wirbel 2 года как умер и поднять его пока никто не планирует


Спасибо, теперь понятно.

Офлайн

#10 Апрель 30, 2012 10:46:37

MantisABC
Зарегистрирован: 2012-04-04
Сообщения: 19
Репутация: +  0  -
Профиль   Отправить e-mail  

сделать *.exe, но не враппер

beelze
MantisABC, а зачем требуется именно “нормальный” *.exe?

нуитка пишет, что:
What it gives:
It is faster? Not really. Compiling takes a lot time, although it may be a one time action. At run time, performance comparisons with CPython show how well optimized CPython bytecode is interpreted. The compiled program is somewhat faster, currently pystone runs at 258% speed. But most often you will not yet notice any significant difference

Так стоит оно того или нет? И в каких случаях? Или просто «чтобы было»?

Ну да, “шоб було”, привык, когда на asm/TP/Delphi писал, что *.exe - делу венец !

ну и все-равно, иногда без *.exe сложно, хотя обхожусь батником, вызывающим нужное в комбинации.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version