Заставляем checkinstall собирать пакеты без ошибок
Переодически мне приходится собирать некоторые программы из исходников,
в связи с этим, я уже давно, начал прибегать к помощи программы
checkinstall. Эта утилитка позволяет заменить последнее действие из трех стандартных (кто не помнит это - 1)
./configure; 2)
make; 3)
sudo make install) на sudo checkinstall -D.
В итоге, вместо обычной установки пакета в систему, я получаю собранный
.deb пакет, который ставится в систему, родным для убунты способом.
Проблема и способ ее решения
Но
частенько случается так, что нормально подготовленный пакет, во время
исполнения команды checkinstall, в конце, не собирается в .deb пакет, а
программа выдает следующую ошибку:
**** Установка неудачна. Отменяется создание пакета.
Причем, если установить пакет с помощью команды 'sudo make install' - все установится без всяких проблем.
Ну чтож, эту проблему можно решить хитрым способом.
1. Если у вас checkinstall выдает ошибку, то проделайте следующее:
$sudo make install
тоесть установите пакет стандартным способом.
2. А вот теперь снова попробуйте установить пакет с помощью checkinstall:
$sudo checkinstall -D
теперь все должно установиться без проблем.
3. Удаляем программу, установленную у нас двумя способами:
$sudo apt-get remove
$sudo make uninstall
4. Все, теперь нормально устанавливаем собранный deb-пакет:
$sudo dpkg -i .deb
P.S. Вроде есть и другие программки по сборке программы в .deb пакет, но я как-то уже привык к checkinstall.
Автор
Leolik
Leolok`s blog
источник статьи
| [ |
30 сентября 2008 |
/ |
|
/ |
 |
] |
Похожие статьи
Руководство по Openbox. Часть 1.Собираем pidgin с поддержкой X-StatusСобираем свежий pidgin 2.5.0 из исходниковVirtualBox: ваш виртуальный ПКСамостоятельный command-not-found
Комментировать:
|
#1 / написал: old_bay / 1 октября 2008 09:27
|
| | |
 |
|
Нафига ж тогда checkinstall если использовать процедуру make install ....:(
он для того и нужен чтоб не делать последнюю процедуру.
Проблемма тут просто в следующем при работе checkinstall не может иногда создать в системме необходимые каталоги .... при этом он ругается и указывает каких именно ему не хватает - просто в процессе надо переодически ему эти каталоги подкидывать - по мере поступления ошиок инсталяции.
Конечно это достаточно геморойно подкидывать ему недостающее - но результат оправдывается созданием полноценного пакета - который легко ставится и убирается из системмы.
п.с.:
$sudo apt-get remove
$sudo make uninstall
не всегда работают - создание данных процедур всегда лежит на совести программера .... а на чюжую совесть пологаться не очень хочется :)
|
|
|
|