установка программ из исходников netbsd

16 декабря 2014 3334 admin

Установка программ из исходников NetBSD


Программы в *NIX можно ставить двумя способами:
1. из скомпилированных динарников;
2. из исходников.

1. Установка из скомпилированных бинарников:

Скомпилированные бинарники можно ставить так:
#pkg_add some_soft.tgz

pkg_add, так же, может установить бинарники из интернета. Причем со всеми зависимостями.
Например, таким образом:
#pkg_add http://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/i386/6.1.5/All/icewm-1.2.38pre2.tgz

можно установить оконный менеджер IceWM.
Обратите внимание, что pkg_add может работать как с HTTP, так и с FTP.

Программы, по умолчанию, устанавливаются в каталог: /usr/pkg/bin/*

2. Установка из исходников:

Чтобы установить из исходников, нужны эти самые исходники программ.

Обзываются эти исходники: pkgsrc.tar.gz
Находятся по адресу: http://ftp.netbsd.org/pub/pkgsrc/

По этому адресу находятся нескольки видов исходников:
1. стабильные версии - http://ftp.netbsd.org/pub/pkgsrc/stable/
Полный адрес до исходников: http://ftp.netbsd.org/pub/pkgsrc/stable/pkgsrc.tar.gz
2. Текущая версия, экспериментальная (не рекомендуется для новичков): http://ftp.netbsd.org/pub/pkgsrc/current/
Полный адрес исходников: http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc.tar.gz

Скачать исходники можно простой FTP-командой (для текущей версии):
#ftp ftp://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc.tar.gz

Если вы под root'ом, то они скачаются в каталог /root, так как это каталог root'а.

ВНИМАНИЕ!!! Не "сидите" под root'ом !!!

Чтобы пользоваться исходниками копируем их в /usr:
#cp /root/pkgsrc.tar.gz /usr

Переходим в этот каталог /usr:
#cd /usr

И распаковываем исходники программ:
#tar zxf pkgsrc.tar.gz

Они распакуются по адресу: /usr/pkgsrc/*
И будут структурированы по категориям:
/usr/pkgsrc/wm/ - оконные менеджеры;
/usr/pkgsrc/www/ - всё интернетное;
и т.д.

Сразу скажу, что дело это долгое, поэтому, если вдруг, вы подумаете что "всё завсило" - вы зря так подумали tongue
Просто дождитесь конца - там куча мелких файлов, а скорость дисковой подсистемы в BSD-ях - не самая быстрая.

Итак, у нас есть исходники программ.
Установим какую-нибудь программу.

ВНИМАНИЕ!!! Для установки программ из исходников - понадобится интернет. Потому что дополнительные модули/библиотеки/исходники тянутся из инета.

ПОЯСНЕНИЕ:
Установка программ из исходников состоит в последовательном выполнении нескольких команд:
1. make - проверяет и собирает все связанные компоненты;
2. make install - устанавливает скомпилированную программу в систему(по умолчанию - в /usr/pkg/bin/*);
3. make clean - удаляет весь хлам из системы, которые были нужны для компиляции программы;
4. make clean-depends - то же что и предыдщее, но очищает с зависимостями, которые были нужны для компиляции.
5. make package - а это команда соберет пакет, установит его (если это еще не сделано) и затем создаст бинарный пакет. В дальнейшем, для манипуляции им, вы можете использовать инструментарий pkg_*. По умолчанию пакет создается в каталоге /usr/pkgsrc/packages, тип файла - tar.gz. Удобно, чтобы каждый раз не компилировать.

Или:

Всё то же самое, только одной командой:
#make install clean clean-depends


Установим, например, IceWM:

Переходим в каталог с исходниками IceWM:
#cd /usr/pkgsrc/wm/icewm

Собираем:
#make

Устанавливаем:
#make install

И чистим(не обязательно, если много места и любите мусорwink )
#make clean
#make clean-depends

или, всё то же самое, но одной командой:
#make install clean clean-depends

Всё, IceWM установлен.
Полный путь до программы выглядит так: /usr/pkg/bin/icewm

Можно запустить простой командой: icewm-session.

ПРИМЕЧАНИЕ:
Начиная с какой-то версии IceWM надо запускать именно icewm-session, хотя, раньше запускалась просто icewm. Теперь icewm-session запускает сам менеджер, трей и менджер заставки.
В этом смысле не совсем удачный пример wink

На этом, установка программ компилированием из исходников - закончена.

До кучи.

Раз уже мы описали компилирование оконного менеджера, то напишем и как его запускать.
Одним из способом запуска оконного менеджера (a-la IceWM, FluxBox, etc) является вызов его с помощью startx.

Реализовать его можно следующим образом:
дописать в конец файла /etc/X11/xinit/xinitrc
такую строчку:
exec /usr/pkg/bin/icewm-session

а перед этим - комментируем строчки начиная с twm.

P.S.

Компилирование из исходников занимает дохренище времени! Компилирование, например, FireFox на моей относительно новой (хотя и с паршивым процом) машине занимает несколько часов ))
Компилирование больших программ, типа, OpenOffice, вполне может занять и сутки.

Более подробно - в первоисточниках:
1. https://www.netbsd.org/docs/pkgsrc/using.html
2. http://wiki.netbsd.org/pkgsrc/how_to_use_pkgsrc/

А вообще, самую лучшую, полную и актуальную инфу лучше искать в man'ах.
  • 0

Другие новости по теме:

Другие новости по теме:

    Информация

    Комментирование данной новости запрещено.
    Последнии комментарии
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Humberto (14.12.2025)
    Great blog here! Also your site loads up very fast...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Nancy (14.12.2025)
    Thank you for every other informative blog.
    Where e...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Thelma (13.12.2025)
    Currently it seems like BlogEngine is the top blog...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Gale (13.12.2025)
    Awesome! Its really remarkable paragraph, I have g...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Teresita (13.12.2025)
    My partner and I stumbled over here by a different...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Mackenzie (13.12.2025)
    Hi there very cool website!! Man .. Beautiful ..
    Wo...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Shenna (13.12.2025)
    Helpful information. Lucky me I discovered your si...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Normand (12.12.2025)
    Really no matter if someone doesn't understand the...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Andres (12.12.2025)
    If you desire to increase your knowledge just keep...
    library initialization failed - unable to allocate file descriptor table - out of memory
    Автор Heriberto (12.12.2025)
    Heya i'm for the first time here. I found this boa...
     Популярные
       
    Календарь
    « Декабрь »
    Пн Вт Ср Чт Пт Сб Вс
    1 2 3 4 5 6 7
    8 9 10 11 12 13 14
    15 16 17 18 19 20 21
    22 23 24 25 26 27 28
    29 30 31
    Облако тегов
    Яндекс.Метрика