Как выполнять бинарные различия и исправления со стандартными инструментами Ubuntu (Debian)? [закрыто]

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

Как выполнить исправление с помощью предустановленных инструментов Ubuntu (или лучше, Debian)?

Меня не интересует, как создать diff, поскольку он находится на моей машине dev, но исправление выполняется на машинах, которые являются базовыми машинами Ubuntu / Debian.

Я знаю bspatch, но он не предварительно установлен.

Уточнение 1: двоичный код подразумевает, что стандарт diff / patch инструменты не могут использоваться; Пояснение 2: using preinstalled tools подразумевает, что пакеты не могут быть установлены.
-1
задан 3 January 2018 в 02:32

3 ответа

В зависимости от точной интерпретации using standard [...] tools действительное и очень независимое от платформы решение заключается в загрузке и создании bspatch на целевых компьютерах.

bspatch не имеет зависимостей; он просто требует gcc (который предварительно установлен по крайней мере на Ubuntu):

wget https://github.com/mendsley/bsdiff/archive/master.zip -O /tmp/bsdiff-master.zip
unzip /tmp/bsdiff-master.zip -d /tmp
cd /tmp/bsdiff-master
./autogen.sh
./configure
make

и /tmp/bsdiff-master/bspatch готовы к использованию.

-1
ответ дан 22 May 2018 в 15:49
  • 1
    Это нарушает ваши требования «из коробки». Debian не поставляется с gcc в базовой установке. OpenSUSE не поставляется с gcc. Raspbian не ... список продолжается. Но у всех этих дистрибутивов есть bsdiff в своих хранилищах, и было бы проще объяснить пользователю, что ей придется установить bsdiff, чем это ... – vidarlo 3 January 2018 в 02:52

В зависимости от точной интерпретации using standard [...] tools действительное и очень независимое от платформы решение заключается в загрузке и создании bspatch на целевых компьютерах.

bspatch не имеет зависимостей; он просто требует gcc (который предварительно установлен по крайней мере на Ubuntu):

wget https://github.com/mendsley/bsdiff/archive/master.zip -O /tmp/bsdiff-master.zip unzip /tmp/bsdiff-master.zip -d /tmp cd /tmp/bsdiff-master ./autogen.sh ./configure make

и /tmp/bsdiff-master/bspatch готовы к использованию.

-1
ответ дан 18 July 2018 в 00:05

В зависимости от точной интерпретации using standard [...] tools действительное и очень независимое от платформы решение заключается в загрузке и создании bspatch на целевых компьютерах.

bspatch не имеет зависимостей; он просто требует gcc (который предварительно установлен по крайней мере на Ubuntu):

wget https://github.com/mendsley/bsdiff/archive/master.zip -O /tmp/bsdiff-master.zip unzip /tmp/bsdiff-master.zip -d /tmp cd /tmp/bsdiff-master ./autogen.sh ./configure make

и /tmp/bsdiff-master/bspatch готовы к использованию.

-1
ответ дан 24 July 2018 в 17:09

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

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