Портал Python-программистов

Форумы сайта python.su

Вы не зашли.

Объявление

Официальная wiki коммунити: wiki.python.su обсуждение

Официальная джаббер конференция коммунити: pythonua@conference.jabber.ru (всегда 20-35 онлайн участников). Настройки

КОД ОБОРАЧИВАТЬ В ТЕГИ [code][/code]

#1 2010-02-08 09:41:05

Landing
Питонер
Зарегистрирован: 2008-07-01
Сообщений: 62
Профиль

Как сделать свою сборку питона?

Есть чистый установленный питон и несколько модулей к нему. Как перенести все это на другой комп? Надо делать свой установщик? Думаю, что rar(exe) архива хватит, но вот куда он что устанавливает, какие dll куда пишет, как узнать?

Неактивен

 

#2 2010-02-08 11:24:26

Ferroman
Питонер
Откуда: Украина, Львов
Зарегистрирован: 2006-11-16
Сообщений: 2575
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

py2exe


Sapienti sat.

Неактивен

 

#3 2010-02-08 15:57:22

ZZZ
Питонер
Откуда: И вот я в Москве... Хочу Сочи!
Зарегистрирован: 2008-04-04
Сообщений: 1181
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

А может pip и virtualenv? ИМХО, это красивее, правильнее и переносимее.
Второй вариант, который пришёл ко мне в голову, это запихнуть в sfx (rar) инсталлер питона и site-packages и настоить запуск автоматической установки инсталлера. Но это через жопу.
И, как третий вариант, мне вспомнился Python portable. Но это тоже не очень.


    ...так кто ж ты, наконец?
    -- Я -- часть той силы, что вечно хочет зла
        и вечно совершает благо.
            Гёте. Фауст.

Неактивен

 

#4 2010-02-08 17:07:50

Андрей Светлов
Команда
Откуда: Киев
Зарегистрирован: 2007-05-15
Сообщений: 1510
Профиль

Re: Как сделать свою сборку питона?

Еще есть занятная возможность. Если в корень zip архива положить __main__.py - то можно писать python <archive>.zip

Неактивен

 

#5 2010-02-08 17:40:23

ZZZ
Питонер
Откуда: И вот я в Москве... Хочу Сочи!
Зарегистрирован: 2008-04-04
Сообщений: 1181
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

Хм... Прикольно.

Однако:
    "Zip import of dynamic modules (*.pyd, *.so) is disallowed."
        (с) http://python.org/dev/peps/pep-0273/
    То есть только pure python? Или я чего-то не так понимаю?

Отредактированно ZZZ (2010-02-08 17:58:39)


    ...так кто ж ты, наконец?
    -- Я -- часть той силы, что вечно хочет зла
        и вечно совершает благо.
            Гёте. Фауст.

Неактивен

 

#6 2010-02-08 18:06:32

Андрей Светлов
Команда
Откуда: Киев
Зарегистрирован: 2007-05-15
Сообщений: 1510
Профиль

Re: Как сделать свою сборку питона?

Да, только питон. Было сделано для того, чтобы можно было легко переносить маленькие админские скриптики. На большее никто не рассчитывал.

Неактивен

 

#7 2010-02-08 18:17:34

ZZZ
Питонер
Откуда: И вот я в Москве... Хочу Сочи!
Зарегистрирован: 2008-04-04
Сообщений: 1181
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

Ясно. Наверное, оно и правильно.


    ...так кто ж ты, наконец?
    -- Я -- часть той силы, что вечно хочет зла
        и вечно совершает благо.
            Гёте. Фауст.

Неактивен

 

#8 2010-02-08 22:20:53

poltergeist
Питонер
Откуда: Днепропетровск
Зарегистрирован: 2007-02-28
Сообщений: 511
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

LandingПитон всё пишет в c:\PythonXY, но вроде ещё забрасывает pythonXY.dll в C:\Windows\System32. Вам скорее всего подойдёт py2exe, который упакует скрипты со всеми зависимостями (включая сам питон).

ZZZpy2exe умеет загружать что угодно из zip архивов и не только, но это уже не так просто как...

Андрей Светлов написал:

Если в корень zip архива положить __main__.py - то можно писать python <archive>.zip

http://py2exe.svn.sourceforge.net/viewv … iew=markup

Неактивен

 

#9 2010-02-08 22:52:35

ZZZ
Питонер
Откуда: И вот я в Москве... Хочу Сочи!
Зарегистрирован: 2008-04-04
Сообщений: 1181
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

Да в общем-то не так уж и сложно. Не понимаю, почему эта функциональность отсутствует в стандартной поставке.
Но с другой стороны... А оно надо?

poltergeist написал:

Питон всё пишет в c:\PythonXY, но вроде ещё забрасывает pythonXY.dll в C:\Windows\System32.

Да. И нет ничего сложного в том, чтобы положить этот pythonXY.dll в папку C:\PythonXY. Проверял давно на 2.3 и 2.4. Мне стыдно, но я тоже писал под виндой...

Отредактированно ZZZ (2010-02-08 23:00:54)


    ...так кто ж ты, наконец?
    -- Я -- часть той силы, что вечно хочет зла
        и вечно совершает благо.
            Гёте. Фауст.

Неактивен

 

#10 2010-02-09 08:43:46

Landing
Питонер
Зарегистрирован: 2008-07-01
Сообщений: 62
Профиль

Re: Как сделать свою сборку питона?

Пока обхожусь записыванием PythonXY.dll в папку с питоном, и вызовом скриптов через cmd .bat. Но криво блин. Py2exe не хочу использовать, сложно нормально заставить работать с pyQT, да и считаю что такие модули должны собирать exe'шник автоматом, чтобы не вникать в дебри полупрограммирования, на которе просто нет времени.

Неактивен

 

#11 2010-02-09 11:19:46

bialix
Команда
Откуда: Запорожье
Зарегистрирован: 2006-07-13
Сообщений: 787
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

В чем проблема-то? Лень устанавливать питон на другой машине? ставить зависимости?

скрипты сами по себе переносимы на ура.


--
...а ещё мы выгуливаем собак (Роберт Хайнлайн)

Неактивен

 

#12 2010-02-09 11:20:22

bialix
Команда
Откуда: Запорожье
Зарегистрирован: 2006-07-13
Сообщений: 787
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

ZZZ написал:

Мне стыдно, но я тоже писал под виндой...

А мне не стыдно.


--
...а ещё мы выгуливаем собак (Роберт Хайнлайн)

Неактивен

 

#13 2010-02-09 11:37:41

Landing
Питонер
Зарегистрирован: 2008-07-01
Сообщений: 62
Профиль

Re: Как сделать свою сборку питона?

bialix

А если используется штук 7-20 сторонних библиотек? py2exe даст страшных размеров exe. А так запихнуть бы все это в один установщик и потом, при появлении новых модулей дописывать их отдельно. При этом я точно знаю, что у пользователя стоит питон и какой версии. (Это все про использование в корпорат. среде).

Неактивен

 

#14 2010-02-09 11:38:54

Landing
Питонер
Зарегистрирован: 2008-07-01
Сообщений: 62
Профиль

Re: Как сделать свою сборку питона?

ZZZ В чем стыд? А под unix* писать не стыдно? А под мак, а под symbian?

Неактивен

 

#15 2010-02-09 13:59:06

poltergeist
Питонер
Откуда: Днепропетровск
Зарегистрирован: 2007-02-28
Сообщений: 511
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

Landing Вы просто не умеете готовить py2exe, там ничего трудного и страшного если разобраться, и я с ним собирал программу на PyQt4. У меня была другая проблема, программа быстро менялась, постоянные обновления (чуть ли не каждый день), решил закинуть программу в сетевую шару и давать пользователям ярлык к программе (вернее к батнику, который указывал на наиболее актуальную сборку). При этом лучше запихнуть все либы в один архив (быстрее запустится).

Неактивен

 

#16 2010-02-09 20:22:36

ZZZ
Питонер
Откуда: И вот я в Москве... Хочу Сочи!
Зарегистрирован: 2008-04-04
Сообщений: 1181
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

bialix, Landing -- давайте без холиваров. Я просто пошутил.  :-)

P.S. А в py2exe действительно ничего сложного нет.

Отредактированно ZZZ (2010-02-09 20:23:51)


    ...так кто ж ты, наконец?
    -- Я -- часть той силы, что вечно хочет зла
        и вечно совершает благо.
            Гёте. Фауст.

Неактивен

 

#17 2010-02-10 13:32:45

igor.kaist
Команда
Откуда: Казань
Зарегистрирован: 2007-11-13
Сообщений: 1636
Профиль  Вебсайт

Re: Как сделать свою сборку питона?

bialix написал:

Лень устанавливать питон на другой машине? ставить зависимости?

Вот это действительно лень, если дело касается винды smile
Для меня легче один раз собрать с помощью py2exe, выкинуть половину неиспользуемого из dist, сжать dll'ки upx'ом, чем ставить дистрибутив питона и следить, везде ли есть нужные библиотеки.
unix-way на винде, как мне кажется, практически невозможен smile

Неактивен

 

Board footer

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson

Board footer

Реклама: