Как сделать патч для Библиотеки C

Для моего проекта класса я пытаюсь устранить фантомную уязвимость на Ubuntu 12.04 вручную. Я полностью понимаю ошибки в/nss/digits_dots.c, и я зафиксировал их. Моя проблема, я не знаю, как сделать патч и скомпилировать его. Как я могу сделать патч? Как я могу просто отредактировать один файл в библиотеке и восстановить его? Я смог загрузить исходную библиотеку, но затем я застрял! Вот то, что я сделал

apt-get source libc6 

У меня были некоторые ошибки. Затем я должен был установить другие пакеты как

sudo apt-get install alien
sudo apt-get install gawk

Но после этого я запустил несколько вещей и начал входить в круги и циклы, но без успеха. Может кто-то говорить мне, как сделать простой патч для библиотеки C.

Спасибо,

0
задан 17 April 2017 в 13:50

1 ответ

Предполагая, что у вас уже есть исходный пакет исходного кода для ghost, вы просто хотите проверить локально, и это всего лишь один измененный файл, тогда вот что вы можете сделать.

1. Создайте различия своих изменений:

diff -u /path/to/original_ghost_file.c ghost_file_changes.c > ghost.patch

2. Примените патч.

Перейдите в исходный каталог и запустите:

patch -p1 ghost.patch

Не видя ваш патч, я не могу посоветовать вам, какую опцию -p использовать, но я предполагаю, что вы использовали абсолютные пути ,

3. Перестройте и установите

Все еще в исходном каталоге, запустите ./configure, make и make check. Если вы хотите заменить исходную версию ghost, запустите make install в конце.

1
ответ дан 3 November 2019 в 12:03

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

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