Astra linux установить make

В Смоленск 1.5 SE отсутствует утилита (пакет) make

user@astra:~$
user@astra:~$
user@astra:~$
user@astra:~$ sudo apt-cdrom add
Использование /media/cdrom/ в качестве точки монтирования CD-ROM
Идентификация.. [f0d6813d4acd6844c761b6c195610141-2]
Поиск на диске индексных файлов..
Найдено индексов: 3 для пакетов, 0 для источников, 0 для переводов и 1 для сигнатур
Название диска:
«OS Astra Linux 1.11 orel — amd64 DVD »
Копирование списков пакетов…gpgv: Подпись создана Чт. 14 апр. 2016 19:10:12 YEKT ключом RSA с ID E75F8E65
gpgv: Действительная подпись от «Astra Archive Automatic Signing Key »
Reading Package Indexes… Готово
Запись нового списка источников
Записи в списке источников для этого диска:
deb cdrom:[OS Astra Linux 1.11 orel — amd64 DVD ]/ orel contrib main non-free
Повторите этот процесс для всех имеющихся CD.
user@astra:~$
user@astra:~$
user@astra:~$
user@astra:~$ sudo apt-get update
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel InRelease
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/contrib Translation-ru_RU
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/contrib Translation-ru
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/contrib Translation-en
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/main Translation-ru_RU
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/main Translation-ru
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/main Translation-en
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/non-free Translation-ru_RU
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/non-free Translation-ru
Игн cdrom://OS Astra Linux 1.11 orel — amd64 DVD orel/non-free Translation-en
Чтение списков пакетов… Готово
user@astra:~$
user@astra:~$
user@astra:~$
user@astra:~$ apt-cache search make | grep ‘^make ‘
make — An utility for Directing compilation.

user@astra:~$
user@astra:~$

user@astra:~$
user@astra:~$ sudo apt-cdrom add
Использование /media/cdrom0/ в качестве точки монтирования CD-ROM
Идентификация.. [d75c1a01d4ad62fc96df4980d15dbea1-2]
Поиск на диске индексных файлов..
Найдено индексов: 3 для пакетов, 0 для источников, 0 для переводов и 1 для сигнатур
Название диска:
«OS Astra Linux 1.5 smolensk — amd64 DVD »
Копирование списков пакетов…gpgv: Подпись создана Чт. 24 марта 2016 22:40:00 YEKT ключом RSA с ID E75F8E65
gpgv: Действительная подпись от «Astra Archive Automatic Signing Key »
Reading Package Indexes… Готово
Запись нового списка источников
Записи в списке источников для этого диска:
deb cdrom:[OS Astra Linux 1.5 smolensk — amd64 DVD ]/ smolensk contrib main non-free
Повторите этот процесс для всех имеющихся CD.
user@astra:~$
user@astra:~$
user@astra:~$
user@astra:~$ sudo apt-get update
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk InRelease
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/contrib Translation-ru_RU
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/contrib Translation-ru
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/contrib Translation-en
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/main Translation-ru_RU
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/main Translation-ru
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/main Translation-en
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/non-free Translation-ru_RU
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/non-free Translation-ru
Игн cdrom://OS Astra Linux 1.5 smolensk — amd64 DVD smolensk/non-free Translation-en
Чтение списков пакетов… Готово
user@astra:~$
user@astra:~$
user@astra:~$
user@astra:~$ apt-cache search make | grep ‘^make ‘
user@astra:~$
user@astra:~$

Читайте также:  Настройка времени linux клиент

Источник

Смоленск 1.6, отсутствует команда make

Даже то, что скачано с офф сайта и установлено — это нарушение политики дистрибутива ?
Чем отличается сборка CE от SE?
То, что скачивается с офф сайта — это под 64- bit, Есть ли дистрибутив под 32-bit? (не смог поставить на ноуте)
С трудом откомпилировал программу. Пришлось еще кучу всего ставить с диска. Причем вставлять то первый, то второй диск.

Есть ли дистрибутив, где уже установлены apt, make, gcc, libx11-dev, libxrandr-dev, libxxf86vm-dev и прочее?

Olej

New member

То, что скачивается с офф сайта — это под 64- bit, Есть ли дистрибутив под 32-bit? (не смог поставить на ноуте)

Нет. Только 64 бит.
Редкий ноутбук на сегодня не поддерживает 64 бит. Год 2010? На паровом двигателе?

С трудом откомпилировал программу. Пришлось еще кучу всего ставить с диска. Причем вставлять то первый, то второй диск.
Есть ли дистрибутив, где уже установлены apt, make, gcc, libx11-dev, libxrandr-dev, libxxf86vm-dev и прочее?

Это политика, идеология всех Linux: устанавливается некоторый минимум, всё остальное вы легко доустанавливаете из стандартного репозитория дистрибутива.
Сравните и оцените как это отличается от идеологии и привычек, выработанных в Windows: всё (как решили в Micrisift) интегрировано в систему, а всё остальное воруем где попало и что придётся, и устанавливаем на свой страх и риск.
Почувствуйте разницу!

Источник

Сборка и установка Linux пакетов в российских сертифицированных ОС

Ранее в статье мы описали сборку расширений для LibreOffice. Теперь мы расскажем, как наработки были перенесены на платформу Linux, а также как решались вопросы с подготовкой пакетов для российских сертифицированных операционных систем, таких как AstraLinux, ALTLinux и RedOS.

image

Постановка задачи и первичная реализация

После успешной реализации нашего продукта DSS для платформы Windows потребовалось перенести наработки (в том числе и расширение для LibreOffice на C++, о сборке и установке sdk которого было рассказано ранее) на платформы семейства Linux.

Состав пакета

Соответственно, необходимо определить, что мы переносим:

  • служба для связи с сервером;
  • драйвер для перехвата и обработки обращений к файлам;
  • служба для общения и обработки информации от драйвера;
  • диалоговое приложение;
  • служба шифрования;
  • расширение для LO.

Сборка

Теперь, когда мы определились с содержимым, для начала соберём deb пакет.
Так как у нас есть службы — их необходимо демонизировать. Для этого используем systemd.
Изначально было принято решение для сборки deb пакета использовать checkinstall. Первый пакет был собран при помощи него. Но при добавлении сборки в CI появились/возникли проблемы с окружением сборки, зависимостями и скриптами до/после установки. Поэтому было решено, что лучше это делать через fakeroot. Эти действия, по большей части, были описаны в данной статье.

Читайте также:  Linux and microsoft access

Создаём отдельную директорию, содержащую инструкции для systemd, которую после перенесём в /lib/systemd/system.

Создаём директорию с содержимым, которое необходимо перенести при установке пакета.

А также создаём директорию DEBIAN, содержащую сценарии для действий перед/после установки/удаления и control, описывающий основную информацию пакета и его зависимости.
После созданного контента выполняем fakeroot dpkg-deb —build «имя пакета».

В итоге на выходе мы имеем deb пакет с содержимым.

Установка, удаление и проверка работы

Устанавливаем его командой:

sudo dpkg -i «имя пакета».deb
sudo dpkg -r «имя пакета» (указанное в файле control)
sudo dpkg --purge «имя пакета» (указанное в файле control)

При установке переносятся и запускаются три демона (приложения, работающие фоном, аналог служб Microsoft).

Для проверки их работоспособности выполняем:

systemctl status «имя демона».service

Для примера статус нашего dssservice

image

Далее началось тестирование пакета и выявление всех зависимостей, которые в процессе создания не были учтены. После успешной обработки всех зависимостей выяснилась одна интересная деталь. Если мы хотим подключаться по rdp к машине, то данный функционал необходимо настроить, так как по дефолту сервера для подключения по данному протоколу нет, как на Microsoft. Самым простым способом нaстройки rdp является настройка xrdp совместно с xfce4. При настройке xfce4 используется в качестве проводника Thunar и, соответственно, пункт в ПКМ, который мы добавляли через filemanager-actions, для него не добавляется. Но решение довольно быстро было найдено — находясь в домашней директории, проходим по следующему пути:

и там будет лежать файл uca.xml, содержащий сценарии для ПКМ.

Разворачивание пакетов в российских сертифицированных ОС

После успешного тестирования данного пакета на Ubuntu возник вопрос о работоспособности его на других ОС, использующих dpkg, как менеджер пакетов, а, соответственно, поддерживающих .deb. А, в частности, вспомнилась отечественная разработка (импортозамещение никто не отменял) — AstraLinux.

AstraLinux

image

С ходу установить пакет не удалось, так как наш пакет имеет в зависимостях filemanager-actions, который мы используем для добавления пункта ПКМ в Nautilus Ubuntu. Но в AstraLinux используется файловый менеджер fly, и для добавления в него мы не будем использовать filemanager-actions, пришли к выводу, что для AstraLinux будем собирать пакет без учёта этой зависимости. А для добавления используется сценарий «имя_процесса».desktop, который добавляется в /usr/share/flyfm/actions/.

Также были разрешены некоторые моменты, связанные с LKM, но их мы рассмотрим в следующей статье.

Cборка RPM

Следующей ОС стала ALTLinux. Она интересна тем, что имеет пакетный менеджер APT, но при этом вместо dpkg у неё используется rpm. А, следовательно, пора нам собрать наш пакет и под rpm.

Изначально попробовали сделать преобразование deb в rpm, как описано в этом мануале.

Alien достаточно мощная утилита, и с её помощью можно достаточно просто преобразовать пакет, достаточно только следовать её подсказкам и добавить недостающее (если она об этом попросит). В итоге при конвертации получили rpm пакет, но при попытке его установки вылезли зависимости, ссылок на которые изначально не было (позже расскажу, в чём была изюминка). Поэтому было принято решение собрать rpm пакет непосредственно средствами rpmbuild.

Читайте также:  Linux mint mount nfs

Сначала решили собирать не под ALTLinux, а под RedOs, так как со стороны бизнеса на неё более перспективные планы. RedOs основана на CentOS, поэтому сборку решили проводить в ней.

Часть с systemd остаётся без изменений, а вот Debian заменяем на файл «имя_проекта».spec, который содержит в себе всю информацию и зависимости из control, сценарии для действий перед/после установки/удаления, а так же описание содержимого пакета (непосредственно пути до того, что необходимо добавить).

После создания файла выполняем:

переносим .spec в rpmbuild/SPECS и выполняем:

rpmbuild --bb rpmbuild/SPECS/dssservice.spec

после чего забираем из директории rpmbuild/RPMS созданный пакет.

Пытаемся установить пакет и утыкаемся в те же самые зависимости, которые были при попытке установить конвертированный deb пакет.

Как оказалось, изюминка заключается в том, что при создании rpm система подтягивала дополнительные библиотеки, и ставила их в зависимость. Чтобы такого не было — необходимо в файл .spec добавить строку после описания зависимостей:

Пробуем установить и да — победа, пакет корректно устанавливается.

Для установки rpm пакета используем команду:

sudo rpm -ivh "имя_пакета".rpm

Для удаления (без удаления пакетов, находящихся в зависимости):

sudo rpm -e --nodeps ""имя_пакета""

RedOs

image

Далее необходимо разобраться с зависимостями, так как необходимые для работы наших приложений пакеты уже имеют другие названия, а также необходимо разобраться с добавлением пункта в ПКМ.

В RedOs в качестве файлового менеджера используется nemo. Для добавления в него пункта в ПКМ необходимо создать файл «имя_действия».nemo_action, в котором по аналогии с файлом .desktop (для AstraLinux) будет сценарий обработки нажатия на новый пункт меню, и переместить его в ~/.local/share/nemo/actions/, перезагрузить nemo и пункт появится.

ALTLinux

image

После успешного тестирования rpm пакета на RedOs перешли к формированию rpm пакета под
ALTLinux. По сути, необходимо скорректировать зависимости, так как для каждой оси пакеты будут иметь своё название, и снова понять, как произвести добавление пункта в ПКМ. Тут нам на помощь снова пришёл filemanager-actions, через который также можно добавить пункты в ПКМ и для Mate и Caja, которые как раз и используются в ALTLinux.

В итоге, мы собрали пакеты для основных, используемых у заказчика, ОС.

Заключение

В дальнейших статьях мы расскажем, почему использовали LKM и Avalonia и какие трудности из-за этого были, а также о дальнейших планах на доработку пакетов (в частности, доработка UI для ввода необходимой информации) и приложений, используемых в них.

Ссылки которые нам помогли

  • ithelp21.ru/udalennoe-podklyutchenie-k-ubuntu-tcherez-rdp — неплохая инструкция, которой пользовались наши тестировщики для добавления rdp на Ubuntu
  • pingvinus.ru/note/nautilus-context-menu-items — настройка nautilus-actions
  • www.debian.org/doc/manuals/maint-guide/build.ru.html — сборка deb
  • linux-notes.org/pishem-init-skript — Init скрипт для systemd

Источник

Оцените статью
Adblock
detector