ошибка команды 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
невозможно, и вы не хотите устанавливать программу без поддержки управления пакетами, другой (более болезненный) метод-изменить алгоритм, в котором пакет сжимается. здесь у вас есть хорошая информация о том, как это сделать.