LINUX.ORG.RU

Как получить список необходимых библиотек (deb-файлов) для запуска bin-файла на xubuntu 21.10?

 , ,


0

1

Bin-файл программы требует на свежеустановленной xubuntu 21.10 также установить необходимые библиотеки (в xubuntu 21.10 это deb-файлы). Как получить список необходимых библиотек (deb-файлов) для запуска bin-файла на xubuntu 21.10?

Bin-файл программы требует на свежеустановленной xubuntu 21.10 также установить необходимые библиотеки

В смысле пишет, каких именно библиотек ему не хватает в явном виде? Поиск по содержимому пакетов: https://packages.ubuntu.com/ — именно по содержимому, не по имени. Хотя по имени тоже может нужное найтись.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Скомпилировал свои c++ исходные коды через команду: g++ -o test test.cpp $(pkg-config –cflags –libs gtk4) и получаю bin файл-программы. Команда ldd file выдала следующий список, требуемых библиотек для этой программы https://ufile.io/qkpy0t54 .. Мне, как-то нужно, или получить, вместо bin файла программы, готовый deb-пакет для автоматической установки на мою xubuntu 21.10 со всеми нужными ей deb-пакетами…..или при запуске этого bin-файла, показывать окно до запуска этой программы, о том, какие библиотеки ей требуются,но не все,а только те, которых нехватает.

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

Хм… интересно… тебе нужно для себя поставить или распространять? Ты бы сразу конечную цель писал, а не вопрос по промежуточным шагам.

Если последнее — то тут сложнее… ты же не намерен ограничиваться по Ubuntu 21.10 как единственным дистрибутивом, куда это можно будет поставить? Потому что если сейчас собрать .deb пакет с теми зависимостями, что у тебя, скорее всего, он только на ней и будет работать.

Насколько мне известно, чтобы запаковать ПО для всех Linux сразу, нужно собирать его в достаточно старом окружении из соображений совместимости, запаковать в бандл все нужные библиотеки, после чего сделать так, чтобы всё распаковывалось или в /opt, или в /usr/local.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Я, хочу загружать программу на snapcraft.io . Назвать её можно «internet traffic monitor» ..c gtk4 формой базово разобрался https://ibb.co/Q8w69DP .. с выводом интернет-соединений тоже, но только в txt-файл из c++ кода.. https://ibb.co/h203Ztv

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

ну так берешь список реквестуемых библиотек и делаешь запросы поиска файла в составе пакета.

вар1: современно через веб интерфейс убунто-репозитория

вар2: установив специальну аптову утилиту apt-file.
в ней сначала скачав списки файлов в пакетах sudo apt-file update
а уже потом поиск по файлику будет выдавать тебе пакеты в которым оне содержится apt-file search файлик

собственно те пакеты и пишешь в Depedens: создаваемого деб файла либо прикладываешь к бинарю скриптик, который их доустанавливает.

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

Эм… а при чем тут тогда то, какие .deb пакеты нужны для работы? Snap пакет же песочница, которая вообще не использует что-либо из библиотек в самом Linux, на котором он стоит. Snap же не только на Ubuntu используют. Тебе нужно узнать, в каких snap пакетах есть нужные тебе библиотеки, и их же прописать как зависимости для своего snap пакета.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

Если можно загрузить свою программу в виде deb-файла в официальный репозиторий ubuntu packages.ubuntu.com , то да, мне нужен deb-пакет.

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

В официальный репозиторий? Это очень непросто, нужно быть мейнтейнером самого проекта. Но ты можешь сделать PPA.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от wersto8top

угу, прям с разбегу тебе дадут доступ в главный репозиторий убунты :)

для сторонних деб-пакетов создан https://launchpad.net/ выкладывай там.

куча прог оттуда стоят и обновляются

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