LINUX.ORG.RU

проблема checkinstall/installwatch + coreutils-6.9


0

0

у меня возникла проблема при инсталляции с исходников через checkinstall - chmod/chown отказывались находить файлы в fake root. после плясок с бубном, я обнаружил, что в coreutls-6.9/chmod используется chmodat, который соответственно является сусколлом, и потому не перехватывается installwatch (версия 0.7.0beta4) (installwatch работает через LD_PRELOAD и ловит вызовы в glibc).

Это что же - уже нельзя из исходников программы ставить?

Уже очень давно в большинстве пакетов поддерживается DESTDIR. Где не поддерживается - есть make install prefix=/path/to/builddir/usr или другие аналоги для сбора в пакет.

Зачем использовать отваливающиеся ugly hacks в виде checkinstall?

Deleted
()
Ответ на: комментарий от Deleted

>Зачем использовать отваливающиеся ugly hacks в виде checkinstall?

Против ugly patch, когда после патчения весь пакет ложится по DESTDIR, а один файл в /var/lib...

Лично я компилирую все в сhroot, до и после компиляции сохраняю списки файлов в chroot и сравниваю.

mky ★★★★★
()
Ответ на: комментарий от Deleted

> Уже очень давно в большинстве пакетов поддерживается DESTDIR. Где не поддерживается - есть make install prefix=/path/to/builddir/usr или другие аналоги для сбора в пакет.

Не хочется нарваться на пакет, который этого не имеет... Нету ли средства, дающего 100% гарантию?

generatorglukoff ★★
() автор топика
Ответ на: комментарий от generatorglukoff

Есть. Сборка пакетов (и установка в DESTDIR) от пользователя, а не от root.

AEP ★★★★★
()

Вредный совет (потому что дистрибутивы, как правило, серьезно патчат coreutils):

Можно пересобрать coreutls так же как в дистрибутиве, и дополнительно передать в командную строку configure параметр: ac_cv_func_openat=no

AEP ★★★★★
()

Если не страшно ;-), можешь попробовать http://pkg.sourceforge.net
Она работает через ptrace, специально для таких случаев.

alexs
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.