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


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

# 966, книга: Ну, до связи!
автор: Евгения Михайловна Артемичева

В своем романе "Ну, до связи!" Евгения Артемичева погружает читателей в мир случайных знакомств и необычной дружбы. Главный герой, Артем, находит загадочную записку у себя под дверью и, следуя ее указаниям, отправляется в увлекательное приключение. По мере того, как Артем исследует незнакомые места и встречает необычных людей, он начинает подвергать сомнению свою собственную жизнь и ценности. Случайное знакомство с Верой, талантливой актрисой, перерастает в неожиданно глубокую связь,...

СЛУЧАЙНАЯ КНИГА

Волчья ягода. Анна Васильевна Данилова (Дубчак)
- Волчья ягода

Жанр: Криминальный детектив

Год издания: 2003

Серия: Бестселлер от Даниловой

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

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

Жанр:

Unix

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

неизвестно

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

неизвестно

Год издания:

-

ISBN:

неизвестно

Отзывы:

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

Рейтинг:

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

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

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

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

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

Рашид Ачилов

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

Программа так и называется - «Contacts menu for Kicker». Подробное ее описание приведено в [3]. Факт успешной сборки программы уже проверен, программа установлена, и протокол установки сохранен в файле, то есть была выполнена команда:


# make install >& install.log


В данном примере для перенаправления в файл и обьединения выводов stdout и stderr используется синтаксис tcsh, в sh необходимо выполнить:


# make install > install.log 2» install.log


Начинаем. Сразу же необходимо иметь в виду, что существует довольно жесткий порядок, в котором в файле Makefile должны появляться определения переменных. В нижеследующем примере приводится правильный порядок и нарушать его не рекомендуется.

Файл Makefile

В соответствии с рекомендациями [4] Makefile должен иметь следующий заголовок:


# New ports collection makefile for: contactsmenu

# Date created: 01 Mar 2006

# Whom: Rashid N. Achilov shelton@granch.ru

#

# $FreeBSD$


На этом заголовок кончается.

Внимание! Для впервые отправляемого порта строка $FreeBSD$ должна выглядеть именно так, как показана!

Первыми строками, идущими за заголовком, должны быть следующие:


PORTNAME= contactsmenu

PORTVERSION= 0.3.4b

CATEGORIES= mail kde


Эти три переменные должны идти первыми и именно в том порядке, в котором они приведены. Первая из них задает имя порта. Она должна совпадать с именем каталога с файлами порта. Вторая задает номер текущей версии программы. Именно по ней будет проводится сравнение существующей и установленной версий. Третья перечисляет список категорий, к которым относится данный порт. Выбор категории, а также требования к составлению данного списка приведены в [2].


MASTER SITES=  http://www.kde-apps.org/content/files/


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

Откуда взять имя дистрибутива и адрес домашнего сайта проекта? Как правило, первоначальная закачка файла производится вручную, следовательно, имя файла и URL исходного сайта всегда можно найти в логах программ, которыми он закачивался. Можно использовать для этого и другие методы, которые я не буду здесь описывать ввиду их чрезвычайно большого разнообразия. Таким образом, если бы имя дистрибутивного файла нашей программы было contactsmenu-0.3.4b.tar.gz, нам бы больше ничего не потребовалось указывать - вся информация для загрузки уже предоставлена. Но не все так просто, потому что имя нашего файла - 34479-contactsmenu-0.3.4b.tar.bz2.

 Что делать? Для таких случаев предусмотрено принудительное задание имени дистрибутивного файла, которое должно быть полным, то есть


DISTNAME= 34479-${PORTNAME}-${PORTVERSION}


Включив в нижеследующие секции «USE_BZIP2=YES» мы сформировали полное имя дистрибутивного файла.

 Для многих популярных URL типа www.apahe.org, sourceforge.net, www.kde.org и пр. определены специальные макросы, в которых перечислены все URL, на которых можно найти данную программу. Например, если бы данная программа располагалась на сайте sourceforge.net, то строка MASTER_SITES была бы заменена следующей комбинацией:


MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}

MASTER SITE SUBDIR= contactsmenu


что означало бы загрузку файла с сайтов, входящих в заранее определенный список из подкаталога contactsmenu.


MAINTAINER= shelton@granch.ru

COMMENT= KDE 3.x addressbook Kicker applet


Эти строки должны идти в том порядке, в котором приведены. MAINTAINER задает адрес электронной почты лица, которое создало и управляет данным портом. COMMENT содержит краткое (одну строчку) описание данного порта.

 Внимание! При использовании нескольких адресов электронной почты в поле MAINTAINER должен быть проставлен тот адрес, который будет указан в поле From: во время отправки подготовленных файлов порта командой send-pr. Если в поле MAINTAINER будет указан один адрес, а обновления порта пойдут с другого адреса, придется дополнительно подтверждать, что данное письмо отправлено именно майнтайнером порта, а не является подделкой.


USE_KDEBASE_VER= 3

USE_GMAKE= yes

USE BZIP2= yes 


Начинается секция переменных USE_*. Здесь, как правило, перечисляются неявные зависимости, заранее определенные в системе. USE_KDEBASE задает зависимость порта от пакета kdebase3, USE_GMAKE - от пакета gmake, USE_BZIP2 - от пакета bzip2 (и заодно устанавливает EXTRACT_SUFX в «.tar.bz2»).

 Что означает «порт X зависит от порта Y»? Это означает, что в соответствии с тем, к какому типу будет отнесена данная зависимость (EXTRACT_DEPENDS, RUN_DEPENDS и т. д., см. bsd.port.mk для полного списка), то на данном этапе построения порта (extract, install и т. д.) система проверит наличие --">

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


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