Автор Тема: [РЕШЕНО] Собрать deb-пакет для easystroke  (Прочитано 323 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн IlyaLinux

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 42
Здравствуйте, друзья!

С удивлением обнаружил, что такой полезной программы как easystroke нет в репозитариях Debian. К счастью исходники открыты и, если по силам, можно попробовать ее собрать. Для сборки используем fork, там человек исправил ошибку компиляции, подтягиваем зависимости, говорим make и, вуаля, в папке лежит скомпилированная программа.

Просто говорить make install не хочется, ибо  на просторах Форума просветлился и понял что не подобает уважающему себя debian'нисту (прошу прощения, если кого-то задел, предлагайте варианты :) ) архивировать исходники, на случай, если потребуется программу удалить. Так может действовать убунтовод, но настоящий debian'щик соберет deb-пакет и установит именно его.

Сказано, сделано. Ан нет, может в душе я уже и считаю себя true-debian, но опыта, увы, не хватает. )
Пробую собрать пакет с помощью checkinstall.
qwerty@debian:~/easystroke
$ sudo checkinstall -D make install
[sudo] пароль для qwerty:

checkinstall 1.6.3, Copyright 2010 Felipe Eduardo Sanchez Diaz Duran
         Эта программа распространяется на условиях GNU GPL



*****************************************
**** Debian package creation selected ***
*****************************************

Этот пакет был создан с использованием данных значений:

0 -  Maintainer: [ root@debian ]
1 -  Summary: [ X11 gesture recognition application ]
2 -  Name:    [ easystroke ]
3 -  Version: [ 20200604 ]
4 -  Release: [ 1 ]
5 -  License: [ GPL ]
6 -  Group:   [ checkinstall ]
7 -  Architecture: [ amd64 ]
8 -  Source location: [ easystroke ]
9 -  Alternate source location: [  ]
10 - Requires: [  ]
11 - Recommends: [  ]
12 - Suggests: [  ]
13 - Provides: [ easystroke ]
14 - Conflicts: [  ]
15 - Replaces: [  ]

Введите номер для изменения параметра или нажмите ВВОД для продолжения:

Installing with make install...

========================= Результаты установки ===========================
install -Ds easystroke /usr/local/bin/easystroke
install -D -m 644 easystroke.svg /usr/local/share/icons/hicolor/scalable/apps/easystroke.svg
install: невозможно создать каталог '/usr/local/share/icons': Нет такого файла или каталога
make: *** [Makefile:125: install] Ошибка 1

****  Установка неудачна. Отменяется создание пакета.

Очищается...OK

Удачи.

Подскажите, пожалуйста, что упустил?
« Последнее редактирование: 05 Июнь 2020, 16:23:03 от IlyaLinux »
 


Оффлайн ecc83

  • Ветеран
  • *****
  • Сообщений: 1349
  • Debian, Openbox
Re: Собрать deb-пакет для easystroke
« Ответ #1 : 04 Июнь 2020, 14:09:35 »
Подскажите, пожалуйста, что упустил?

Цитировать
невозможно создать каталог '/usr/local/share/icons': Нет такого файла или каталога

Попробуй создать каталог вручную, перед запуском checkinstall.
« Последнее редактирование: 04 Июнь 2020, 14:17:21 от ecc83 »
 

Оффлайн ferum

  • Ветеран
  • *****
  • Сообщений: 3607
  • Buster TDE & KDE
Re: Собрать deb-пакет для easystroke
« Ответ #2 : 04 Июнь 2020, 14:29:37 »
Пробую собрать пакет с помощью checkinstall.
Checkinstall  зло, он мнёт всё в /usr/local, даже если разработчиком это не предусмотрено. Уже лучше использовать ленивую сборку на коленке https://debianforum.ru/index.php/topic,10410.0.html Come updone
Русские дебианщики против цифрового слабоумия !
 
Пользователи, которые поблагодарили этот пост: IlyaLinux

Оффлайн ecc83

  • Ветеран
  • *****
  • Сообщений: 1349
  • Debian, Openbox
Re: Собрать deb-пакет для easystroke
« Ответ #3 : 04 Июнь 2020, 17:46:15 »
Checkinstall  зло, он мнёт всё в /usr/local

Приветствую :)
Насчёт "зло" спорить не буду, а на счёт "он мнёт всё в /usr/local" - это не совсем так.
Если при сборке НЕ указать ключ [--prefix=/usr] то разумеется от засунет в каталог по умолчанию.

при запуске команды нужно указывать каталог установки:

./configure --prefix=/usr
команду checkinstall лучше запускать так:

sudo checkinstall -D --install=no --nodoc
 
Пользователи, которые поблагодарили этот пост: IlyaLinux

Оффлайн ferum

  • Ветеран
  • *****
  • Сообщений: 3607
  • Buster TDE & KDE
Re: Собрать deb-пакет для easystroke
« Ответ #4 : 04 Июнь 2020, 18:15:58 »
Приветствую
Взаимно  :D
Я обобщил, приходилось собирать программы где всё начинается с make.
Off-Topic: ShowHide
Первый мой пакет был собран ещё для ubuntu 9.04, это был маленький плагин для kaffeine  kaffeine-sc. Спустя какое то время я задался вопросом, на сколько соответствует правилам сборки пакетов утилита checkinstall. Так же меня интересовал конвертор RPM пакетов alien. Удивительно но checkinstall мало того что собирает весьма упрощённые пакеты, она вообще не может собирать большие исходники, где на выходе несколько бинарных файлов. Другое дело alien , даже файлы  control генерируются с учётом текущей версии дистрибутива, хотя версии зависимостей в RPM могли сильно отличаться.
Русские дебианщики против цифрового слабоумия !
 

Оффлайн IlyaLinux

  • Пользователь
  • *
  • Topic Author
  • Сообщений: 42
Re: Собрать deb-пакет для easystroke
« Ответ #5 : 05 Июнь 2020, 16:22:12 »
Друзья, больше спасибо за помощь, все получилось. :D ferum, статья замечательная, кратко и по делу.

Приведу кратко последовательность действий, чтобы собрать наипростейший deb-пакет.
$ make install DESTDIR=../easystroke_0.6.0-10-gf3815dc_amd64
$ cd ..

# В текстовом редакторе подправляем файл control. За основу берем файл из
# пакета Ubuntu

$ dpkg-deb --build easystroke_0.6.0-10-gf3815dc_amd64/
$ sudo dpkg -i easystroke_0.6.0-10-gf3815dc_amd64.deb
$ sudo apt install -f

ЗЫ. Думал будет страшнее.
 

Теги:
 

Как деплоить/инсталить пакет который не должен прерывать режим работы ?

Автор kred

Ответов: 2
Просмотров: 2175
Последний ответ 30 Ноябрь 2011, 19:24:50
от dimas000
Сборка ядра под intel atom [Решено]

Автор seisros

Ответов: 41
Просмотров: 13824
Последний ответ 27 Август 2013, 12:43:36
от w285
Проблема в запуске TOMAHAWK после сборки [РЕШЕНО]

Автор turgon

Ответов: 2
Просмотров: 1323
Последний ответ 16 Март 2016, 12:36:06
от turgon
[РЕШЕНО] Как htop и conky определяют количество занятой оперативной памяти

Автор IlyaLinux

Ответов: 5
Просмотров: 195
Последний ответ 03 Июль 2020, 13:26:03
от IlyaLinux
как собрать драйвера AMD 13.1 в дебпакеты?

Автор izamoo

Ответов: 1
Просмотров: 1713
Последний ответ 18 Февраль 2013, 10:42:03
от vladimir_ar