Библиотека knigago >> Компьютеры: Операционные системы >> Unix >> Создаем порт для FreeBSD своими руками. Часть I


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 438, книга: Приключения Ольхолапа
автор: Эрин Хантер

Здравствуйте, я благодарна Вам за перевод этой книги. Также я хочу попросить у Вас разрешение на публикацию Вашего перевода книги "Приключения Ольхолапа" на Wattpad.

Рашид Ачилов - Создаем порт для FreeBSD своими руками. Часть I

Создаем порт для FreeBSD своими руками. Часть I
Книга - Создаем порт для FreeBSD своими руками. Часть I.  Рашид Ачилов  - прочитать полностью в библиотеке КнигаГо
Название:
Создаем порт для FreeBSD своими руками. Часть I
Рашид Ачилов

Жанр:

Unix

Изадано в серии:

неизвестно

Издательство:

неизвестно

Год издания:

-

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Создаем порт для FreeBSD своими руками. Часть I"

Cистема портов - то, чем по праву гордится FreeBSD. Система содержит ссылки на десятки тысяч программ, и список этот постоянно пополняется. Кто их создает, эти пополнения – некие выдающиеся специалисты? Да вовсе нет. Вы тоже сможете стать одним из них.

Автоматизированная система сборки стороннего программного обеспечения из исходных текстов (система портов) - это то, чем по праву гордится FreeBSD. Система содержит ссылки на десятки тысяч программ, и этот список постоянно пополняется. Кто их создает - эти пополнения - некие выдающиеся специалисты? Да вовсе нет. Вы тоже сможете стать одним из них.

Рашид Ачилов

Читаем онлайн "Создаем порт для FreeBSD своими руками. Часть I". [Страница - 2]

первой. В нее помещаются переменные PORTNAME, PORTVERSION, CATEGORIES, MASTER_SITES и DISTNAME. Также в нее могут быть помещены другие переменные, полный перечень которых приведен в файле bsd.port.mk.

• Секция MAINTAINER идет непосредственно после начальной секции. Как правило, она содержит только две переменные - MAINTAINER и COMMENT. Смысл этой секции в том, что она определяет персону, отвечающую за данный порт, и дает краткое описание этого порта. В целях безопасности все запросы на патчи (да и сами патчи тоже), пришедшие для уже принятого порта не с адреса, указанного в поле MAINTAINER, а с другого адреса, перенаправляются MAINTAINER на утверждение и вносятся в порт только в том случае, если будут им одобрены.

• Секция USE_* расположена после секции MAINTAINER. Она содержит различные переменные, задающие явно или неявно зависимости для данного порта. Например, «USE_GETTEXT=yes» задаст зависимость порта от devel\gettext, «USE_KDEBASE_VER=3» задаст зави симость от x11\kdebase3 и т. д. Список всех возможных переменных USE_* приведен в файле bsd.port.mk. Может отсутствовать, но, как правило, присутствует - трудно найти порт, который вообще ни от чего не зависит.

• Секция доопределений - последняя секция в файле. Может отсутствовать и зачастую так и происходит. Содержит переопределения различных мишеней, составляющих процесс сборки порта. При сборке порта последовательно выполняются мишени fetch, extract, configure, build и install. Каждая из них в свою очередь состоит из трех этапов: pre-sometarget, do-sometarget и post-sometarget. Эти этапы предназначены для проведения дополнительной предварительной или после дующей обработки, а также для замещения некоторого этапа, если в этом есть необходимость. Например, этап do-extract может быть переопределен для выполнения распаковки дистрибутива нестандартным образом. Существуют и другие этапы, полный их перечень приведен в файле bsd.port.mk.

• distinfo - файл, описывающий все файлы, входящие в дистрибутив программы. Его нет необходимости создавать вручную - после создания Makefile достаточно выполнить команду make makesum - и он будет создан автоматически.

• pkg-descr - текстовый файл с небольшим описанием программы и ее возможностей. Описание может быть вообще коротким - 2-3 строки или более подробным 10-15 строк. В конце файла желательно привести URL разработчика и его адрес электронной почты в формате:


WWW: http://this.insert.link/~homepage

Author: John J. Smith jsmit@someserver.tld


• pkg-plist - список всех файлов, входящих в программу, а также команд, выполняемых при установке и/или удалении данной программы. Файлы указываются с путями относительно каталога установ ки (по умолчанию /usr/local), могут содержать макросы (будут рассмотрены ниже). Команды задаются в формате, описанном в man pkg_create.

• Другие файлы с произвольными именами. Например, файл сообщения, выдаваемого после успешной установки (или удаления) обычно называется pkg-message, хотя конечно никто не помешает назвать его как угодно по-другому.


Итак, что понадобится для того, чтобы приступить к созданию своего собственного порта?

Дистрибутив программы. Его следует поместить в /usr/ports/distfiles - это обычно место, куда скачиваются дистрибутивы и где система портов будет их искать.

Программа должна собираться и устанавливаться без ошибок. Если создается порт для чужой программы и она собирается с ошибками, следует найти причину, но не править исходный текст, а подготовить патч (если только не предполагается выкладывать исправленный дистрибутив на собственном сервере).

Решение о присвоении программе определенной категории.

Любимый текстовый редактор.

Терпение и свободное время - возможно, порт придется пересобирать не один раз и даже не десять.

Первый порт - несложная программа для КDЕ

Мы не будем заниматься искуственными примерами. В качестве примера первого порта возьмем несложную программу для KDE, взятую с сайта http://www.kde-apps.org. Почему именно для KDE? Сообщество разработчиков KDE огромно, программы появляются, развиваются, а потом перестают поддерживаться и развиваться постоянно, причем большинство их авторов из Европы, работающие в той или иной версии Linux и даже и не подозревающие, что их программа может работать и в другой операционной системе, и ситуация, когда на KDE applications находится интересная и нужная программа, - это совершенно обычная ситуация. Итак, в качестве примера возьмем программу, которая позволяет встроить в панель KDE выпадающее меню с содержимым адресной книги. --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.