Недавно я довольно быстро использовал кодирование и GTK 3. Его отличные результаты, и я доволен некоторыми результатами, но теперь хочу поделиться своими приложениями с людьми, работающими под управлением Windows или Mac. Есть ли способ сделать какой-либо установщик Windows, или мне придется держать их за руку, пытаясь установить различные библиотеки и т. Д.? Заранее спасибо.
GTK3 - это бит ... Я займусь этим через секунду ...
Заключение проекта Python для Windows на самом деле довольно просто, если вы используете что-то вроде py2exe или pyinstaller, Есть также коммерческие варианты, но это было так долго, что я не могу вспомнить их имена.
В любом случае, вы закончите всю среду Python со всем, что вам нужно, испекли. Пользователь просто запускает ее.
Вернемся к набору инструментов. GTK3 может быть установлен на Windows, но это не преуспевающий или зрелый кросс-платформенный инструментарий. Есть несколько вопросов об этом на StackOverflow но я не знаю, какие привязки они предоставляют. Вероятно, они не подходят для Python, но я надеюсь, что ошибаюсь. Короче говоря, вы, вероятно, не хотите использовать GTK3 для кросс-платформенного приложения.
Прошлое, вам осталось искать альтернативу. Три популярных варианта:
Вы можете создавать пакеты .deb, где, если есть связанные с ними зависимости, они могут быть указаны, как и пакет .deb, который вы обычно устанавливаете.
Создание пакета не так просто, что вы можете научить вас здесь в 1 или 2 командах, вам нужно что-то прочитать об этом, поэтому я рекомендую вам прочитать следующее:
http://developer.ubuntu.com/packaging/html/
Основная информация с этого сайта:
Запуск пакета
bzr-builddeb включает в себя плагин для создания нового пакета из
шаблон. Плагин является оберткой вокруг команды dh_make. Вы
должны быть уже установлены, если вы установили упаковку-dev. Запустите
команда, указывающая имя пакета, номер версии и путь к
верхний архив:
$ sudo apt-get install dh-make
$ cd ..
$ bzr dh-make hello 2.7 hello-2.7.tar.gz
Когда он задает тип пакета s для одиночного двоичного кода. Это будет
импортируйте код в ветку и добавьте каталог debian / packaging.
Посмотрите содержимое. Большинство файлов, которые он добавляет, необходимы только
для специализированных пакетов (таких как модули Emacs), чтобы вы могли начать с
удаление необязательных файлов примеров:
$ cd hello/debian
$ rm *ex *EX
Теперь вы должны настроить каждый из файлов.
В debian / changelog измените номер версии на версию Ubuntu:
2.7-0ubuntu1 (версия вверх 2.7, версия Debian 0, версия Ubuntu 1). Также измените неустойчивость к текущей версии Ubuntu
таких как точные.
Большая часть работы по созданию пакета выполняется с помощью ряда сценариев
называемый debhelper. Точное поведение изменений debhelper с новыми
основные версии, файл compat указывает debhelper, какая версия
вести себя как. Обычно вы хотите установить это в самую последнюю версию
который равен 8.
элемент управления содержит все метаданные пакета. Первый абзац
описывает исходный пакет. Второй и последующие параграфы
описать создаваемые бинарные пакеты. Нам нужно будет добавить
пакеты, необходимые для компиляции приложения в Build-Depends :. Для
привет, убедитесь, что он включает по крайней мере:
Build-Depends: debhelper (> = 8.0.0) Вам также нужно будет заполнить
описание программы в поле Описание:.
авторские права должны быть заполнены, чтобы следить за лицензией восходящего потока
источник. Согласно файлу hello / COPYING это GNU GPL 3 или
позже.
docs содержит любые файлы документации вверх по течению, которые, по вашему мнению, должны быть
включены в окончательный пакет.
README.source и README.Debian нужны только в том случае, если ваш пакет
любые нестандартные функции, мы не можем их удалить.
источник / формат можно оставить как есть, это описывает формат версии
исходный пакет и должен быть 3.0 (одеяло).
правила - самый сложный файл. Это Makefile, который компилирует
кода и превращает его в двоичный пакет. К счастью, большая часть работы
автоматически выполняется в эти дни debhelper 7, поэтому универсальный%
Цель Makefile запускает сценарий dh, который будет запускать все
необходимо.
Все эти файлы более подробно описаны в обзоре
debian статьи каталога.
Наконец, передайте код в свою упаковочную ветку:
$ bzr commit -m "Initial commit of Debian packaging."
Построение пакета
Теперь нам нужно проверить, что наша упаковка успешно компилирует
пакет и создает двоичный пакет .deb:
$ bzr builddeb -- -us -uc
$ cd ../../
bzr builddeb - это команда для создания пакета в его текущем
место нахождения. -Us -uc говорит, что GPG не нужно подписать
компиляции. Результат будет размещен в ...
Вы можете просмотреть содержимое пакета с помощью:
$ lesspipe hello_2.7-0ubuntu1_amd64.deb
Установите пакет и проверьте, работает ли он:
$ sudo dpkg --install hello_2.7-0ubuntu1_amd64.deb
Следующие шаги
Даже если он создает двоичный пакет .deb, ваша упаковка может иметь
ошибок. Многие ошибки могут быть автоматически обнаружены нашим инструментом lintian
который может быть запущен как в исходном файле метаданных .dsc, так и в файле .deb
двоичный пакет:
$ lintian hello_2.7-0ubuntu1.dsc
$ lintian hello_2.7-0ubuntu1_amd64.deb
Описание каждой из проблем, о которых он сообщает, можно найти на
lintian сайт.
После исправления упаковки вы можете перестроить с помощью -nc «no
чистым "без необходимости строить с нуля:
$ bzr builddeb -- -nc
Проверяя, что пакет создается локально, вы должны обеспечить его
основывается на чистой системе с использованием pbuilder. Если вы еще не создали
pbuilder-dist, сделайте это сейчас:
$ bzr builddeb -S
$ cd ../build-area
$ pbuilder-dist precise build hello_2.7-0ubuntu1.dsc
Когда вы довольны своим пакетом, вы захотите, чтобы другие просмотрели
Это. Вы можете загрузить ветку в Launchpad для просмотра:
$ bzr push lp:~<lp-username>/+junk/hello-package
Загрузка его в PPA (Personal Package Archive) обеспечит его сборку
и дать простой способ для вас и других проверить бинарные пакеты.
Вам нужно будет настроить PPA в Launchad, а затем загрузить с dput:
$ dput ppa:<lp-username> hello_2.7-0ubuntu1.changes
Существует инструмент py2exe который преобразует программу python в автономный исполняемый файл Windows (включая интерпретатор python), который, я думаю, является тем, что вы ищете.
Эта страница в частности упоминает упаковку приложений Gtk с помощью этого инструмента.
Я не боюсь, что с OS X не поможет.