Установка приложений: порты и пакеты
Материал из Википедии - свободной энциклопедии.
Использование системы пакетов
| Содержание |
Установка пакета
Для установки пакетов программного обеспечения для FreeBSD из локальных файлов или с сервера в сети вы можете использовать утилиту pkg_add. Если у вас нет исходных текстов локальных пакетов (например, набор CD-ROM с FreeBSD), то проще всего, наверное, воспользоваться опцией -r для pkg_add(1). Это приведёт к тому, что утилита автоматически определит правильный формат объектных файлов и релиз, а затем загрузит и установит пакет с сервера FTP.
# pkg_add -r <пакет>
В примере выше нужный пакет будет загружен и установлен без всякого дополнительного взаимодействия с пользователем. Если вместо основного сайта вы хотите указать другое зеркало пакетов FreeBSD, то для переопределения используемых по умолчанию значений вам необходимо задать соответствующим образом значение переменной PACKAGESITE. Для загрузки файлов утилита pkg_add использует функцию fetch(3), которая принимает во внимание различные переменные окружения, включая FTP_PASSIVE_MODE, FTP_PROXY и FTP_PASSWORD. Если вы находитесь за сетевым экраном или для работы с FTP/HTTP вам необходимо использовать прокси, то определите соответствующие переменные. Обратитесь к справочной странице по fetch для получения полного списка переменных. Заметьте, что в примере выше вместо lsof-4.56.4 используется lsof. При использовании функций загрузки с сети номер версии в имени пакета должен быть опущен. Утилита pkg_add автоматически загрузит последнюю версию приложения. Файлы пакетов распространяются в форматах .tgz и .tbz. Вы можете найти их по адресу ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages или взять с дистрибутива FreeBSD на CD-ROM. Каждый CD из комплекта FreeBSD на 4 дисках (а также PowerPak и тому подобное) содержит пакеты в каталоге /packages. Расположение пакетов похоже на то, как организовано дерево /usr/ports. Каждая категория имеет собственный каталог, и каждый пакет помещается в каталог All.
Структура каталогов системы пакетов соответствует структуре системы портов; они взаимодействуют друг с другом для формирования единой системы пакетов/портов.
Управление пакетами
pkg_info является утилитой для вывода списка и описаний различных установленных пакетов. pkg_version является утилитой для вывода отчёта о версиях всех установленных пакетов. Она сравнивает версию имеющегося пакета с текущей версией, находящейся в дереве портов.
Удаление пакета
Для удаления ранее установленных пакетов с программным обеспечением используйте утилиту pkg_delete
# pkg_delete <пакет>
Сборка пакетов из исходников slackware/deepstyle
предлогаю по возможности собирать пакеты не из под root, чтоб ничего на всякий случай не напортить (обычный пользователь имеет право на все команды для сборки пакетов, кроме makepkg). Для начала нужно разархивировать исходники в текущую папку. для этого требебуется набрать Код
$ tar xfj <имя_пакета>.tar.bz2
Код
$ tar -xvzf <имя_пакета>.tar.gz
и затем перейти в эту директорию Код
$ cd <имя_пакета>
затем выполняем следующие команды для компиляции пакета Код
$ ./configure $ make
после этого желательно посмотреть файл Makefile для поиска в нем переменной которая хранит корневой каталог, куда будет устанавливаться пакет. В большинстве случаев это переменная DESTDIR. требуется также создать каталог, куда будет собираться пакет. Код
$ mkdir ./../<имя_пакета_my_sborka>
и затем собрать пакет в этот каталог Код
$ make install DESTDIR=./../<имя_пакета_my_sborka>
чтоб собрать пакет нужно перейти в эту директорию Код
$ cd ./../<имя_пакета_my_sborka>
получить права root Код
$ su
<password>
и уже под рутом выполнить команду Код
# makepkg <имя_пакета_my_sborka>.tgz
после этого пакет будет собран, и также под рутом можно его установить утилитой installpkg или pkgtool. но более правильно считается делать слакбуилды. п.с. спасибо большое belial@jabber.lafox.net за поиск ошибок. [ mailto:qnx@ukr.net ]

