ошибка команды dpkg: содержит член ununderstood данных

Я пытаюсь установить джейлбрейк tweak с помощью make package install но я получаю эту ошибку от dpkg:

dpkg-deb: file `/tmp/_theos_install.deb' contains ununderstood data member data.tar.xz     , giving up
dpkg: error processing /tmp/_theos_install.deb (--install):
subprocess dpkg-deb --fsys-tarfile returned error exit status 2
Errors were encountered while processing:
/tmp/_theos_install.deb
make: *** [internal-install] Error 1

насколько я могу судить, он не в состоянии понять .расширением XZ, но я не уверен, почему этот файл не создается. Спасибо за помощь.

2 ответов


я узнал, как это исправить. В $THEOS/makefiles/package/deb.mk замените эту строку:

 $(ECHO_NOTHING)COPYFILE_DISABLE=1 $(FAKEROOT) -r dpkg-deb -b "$(THEOS_STAGING_DIR)" "$(_THEOS_DEB_PACKAGE_FILENAME)" $(STDERR_NULL_REDIRECT)$(ECHO_END)

С этой строки:

$(ECHO_NOTHING)COPYFILE_DISABLE=1 $(FAKEROOT) -r dpkg-deb -Zgzip -b "$(THEOS_STAGING_DIR)" "$(_THEOS_DEB_PACKAGE_FILENAME)" $(STDERR_NULL_REDIRECT)$(ECHO_END)

на .deb файл создается, потому что вы сказали системе сборки Theos сделать это. The package install правило Makefile создает пакет Debian с помощью xz сжатия. Теперь этот вид сжатия поддерживается версиями dpkg равно или выше 1.15.6.

Итак, чтобы решить вашу проблему, вы должны обновить dpkg к более новой версии или установите Теос без поддержки упаковки. Наверное, просто make install сделает это.

в случае обновления dpkg невозможно, и вы не хотите устанавливать программу без поддержки управления пакетами, другой (более болезненный) метод-изменить алгоритм, в котором пакет сжимается. здесь у вас есть хорошая информация о том, как это сделать.