Используя dpkg для установки пакетов из локального каталога

я уточняю наш установщик. Путь он работает все наши компоненты сделан В.deb файлы. Установщик просто вызывает dpkg на всех из них сразу, вместе с их зависимостями. Это отлично работает...до тех пор, как вы установите на Ubuntu Linux 8.04.1. Например, при установке в Ubuntu 8.04.3, версия libc6-dev, которая может быть установлена, больше. Но dpkg все еще, кажется, устанавливает нашу версию libc6-dev, несмотря на то, что уже установлена более высокая версия. Как вы могли ожидайте, это вызывает проблемы.

каков правильный способ сделать это? Проверить каждый пакет, который мы собираемся установить, на тот, что в системе? Я думал, dpkg или apt сделали это для нас. Во-вторых, почему это должно быть так больно? Целевые компьютеры не будут иметь ни доступа к интернету, ни к зеркалу. Мы должны быть в состоянии отправить приложение, чтобы быть полностью самодостаточным. Пакеты должны были освободить нас от ада зависимостей, и похоже, что это не так.

3
задан Matt Green
10.11.2022 2:07 Количество просмотров материала 2511
Распечатать страницу

2 ответа

наилучшим решением представляется поставить все пакеты в локальный репозиторий, как пакет CD, и добавить файл в /etc/apt/sources.list.d для включения репозитория. Тогда надо просто делать aptitude update; aptitude install <packages> для автоматического получения правильных установленных пакетов.

2
отвечен Teddy 2022-11-11 09:55

я в это не верю dpkg проверяет номер версии уже установленных пакетов. apt должен сделать это, но я не верю, что он будет установлен с диска, Если вы не измените sources.list (обычно находится в /etc/apt/). Если добавить исходный каталог в sources.list, вы должны быть в состоянии запустить стандартный apt-get установить команды, и все проверки он делает для вас.

1
отвечен Andrew Scagnelli 2022-11-11 12:12

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх