Ошибка при создании пакета .deb с Quickly: setup.py install_egg_info не удалось

Я написал небольшую программу, и теперь я пытаюсь сделать из нее пакет .deb. Когда я запускаю quickly --verbose package, я получаю следующее:

quickly --verbose package 
/usr/lib/python2.7/dist-packages/gobject/constants.py:24: Warning: g_boxed_type_register_static: assertion `g_type_from_name (name) == 0' failed
  import gobject._gobject
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:40: Warning: specified class size for type `PyGtkGenericCellRenderer' is smaller than the parent type's `GtkCellRenderer' class size
  from gtk import _gtk
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:40: Warning: g_type_get_qdata: assertion `node != NULL' failed
  from gtk import _gtk
setup.py install_egg_info failed
An error has occurred when creating debian packaging
ERROR: can't create or update ubuntu package
ERROR: package command failed
Aborting

Я прочитал вопрос Jono Bacon на веб-сайте Quickly developer, и у него была такая же проблема, как и у меня, но хотя он и объяснил, как его исправить Я не понимаю, что я должен делать. Я новичок в Quickly и Python. Что мне нужно сделать?

1
задан 3 August 2012 в 02:07

1 ответ

Я считаю, что это означает, что вы используете некоторые элементы, основанные на gtk2, возможно, pygtk и некоторые элементы, которые gtk3 с интроспекцией gobject. Эти вещи не смешиваются. После того, как вы используете gtk3 и, следовательно, интроспекцию gobject, вы должны оставить все pygtk и gtk2 позади.

Программы, которые быстро производят, использовали pygtk и, следовательно, gtk2, но я считаю, что последние быстрые версии генерируют интроспекцию gtk3 и gobject.

В библиотеках, которые вы используете, можно использовать gtk2 или gtk3. В ответе, который вы упомянули, Jono сказал, что PyNotify использует gtk2, например. По-видимому, он решил, что одна программа использует gtk2 исключительно, а другая программа использует gtk3 исключительно - я думаю, это то, что он имел в виду, имея отдельные базы кода.

Делать нужно, чтобы выбрать один, возможно gtk3 и интроспекцию , и выполните то, что вам нужно сделать, чтобы быть осторожным, чтобы использовать только те библиотеки, которые были преобразованы для использования gtk3 и gobject. Также [.d3]

2
ответ дан 25 May 2018 в 07:58
  • 1
    Спасибо, Джон за вашу помощь ... поскольку я сказал, что я новичок в программировании ... потому что я не был уверен, где мой код использует gtk2 и где gtk3 я решил отключить (# на передней части строки) весь мой код. .. и до сих пор не повезло ... У меня такая же ошибка. Я начинаю думать, если это может быть потому, что я добавляю новое диалоговое окно с помощью quickly add dialog, а затем я решил, что мне больше не нужен этот диалог, поэтому я удаляю все файлы, содержащие это имя диалогового окна? – Majster-pl 4 August 2012 в 00:05
  • 2
    Я не уверен, что понимаю, но если у вас все еще есть проблемы после того, как вы прокомментируете свой код, вы тоже закомментировали какие-либо импортированные вами импорты? Я не оптимист, который поможет, но может быть. Я думаю, что создание пакета может включать автоматическое вычисление зависимостей, что делает важные команды импорта python важными. – John S Gruber 4 August 2012 в 06:30

Другие вопросы по тегам:

Похожие вопросы: