FAQ FreeBSD - Прикладные программы

ОГЛАВЛЕНИЕ

  

5. Прикладные программы

5.1. Итак, где находятся все прикладные программы?

Пожалуйста, загляните на страницу портов, содержащую информацию о программных
продуктах, перенесённых во FreeBSD. На данный момент в этом списке находится
более 3400 приложений и он ежедневно увеличивается, так что почаще туда загляды
вайте или подпишитесь на список рассылки freebsd-announce, в котором
публикуется информация о появлении новых приложений.
Большинство портов предназначено для веток 2.2, 3.x и 4.x, и многие из них
должны нормально работать на системах версий 2.1.x. При выходе нового релиза
FreeBSD в него в каталог ports/ включается актуальная на момент выхода
коллекция портов.
Мы также поддерживаем концепцию "пакаджа", являющегося не более чем упакованным
дистрибутивом в бинарной форме с некоторыми встроенными возможностями по его
настройке во время установки. Пакадж может быть легко проинсталлирован и
деинсталлирован снова без углубления в детали того, какие файлы должны быть
инсталлированы.
Используйте меню установки пакаджей в /stand/sysinstall (в пункте меню
post-configuration) или запускайте pkg_add(1) с указанием конкретных файлов с
пакаджами, которые вы хотите проинсталлировать. Файлы с пакаджами, как правило,
идентифицируются по их суффиксу .tgz, а для тех, кто имеет дистрибутив системы
на компакт-диске, предназначен каталог packages/All, содержащий все эти файлы.
Они также могут быть получены по сети для разных версий FreeBSD со следующих
серверов:
для 2.2.8-RELEASE/2.2.8-STABLE
    ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-2.2.8/
для 3.X-RELEASE/3.X-STABLE
    ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/
для 4.1-RELEASE/4-STABLE
    ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/
для 5.X-CURRENT
    ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/
или с ближайшего к вам зеркального сервера.
Имейте в виду, что не все порты могут быть доступны в виде пакаджей, так как
постоянно идёт добавление новых. Неплохо время от времени проверять, какие
пакаджи доступны на основном сервере ftp.FreeBSD.org.

5.2. Почему возможности /bin/sh так малы? Почему бы во FreeBSD не использовать bash или какой-либо другой командный процессор?

Потому что в стандарте POSIX сказано, что все командные процессоры должны вести
себя так же, как shell.
Более подробный ответ заключается в следующем: многим требуется, чтобы
разрабатываемые скрипты для командного процессора были переносимы между многими
системами. Именно поэтому в POSIX очень подробно описан командный процессор и
набор утилит. Большинство скриптов пишутся на языке процессора Bourne shell, к
тому же некоторые важные программные вызовы (make(1), system(3), popen(3) и их
аналоги на языках скриптов высокого уровня, таких как Perl или Tcl)
предполагают для интерпретации команд использование именно Bourne shell. Так
как Bourne shell используется столь широко и часто, то очень важно, чтобы он
стартовал очень быстро, его поведение было строго регламентировано и при этом
потребности в оперативной памяти были малы.
В имеющейся реализации мы приложили максимум усилий для воплощения в жизнь всех
этих требований одновременно. Для того, чтобы сохранить /bin/sh небольшим по
размеру, мы не включили многие из обычных возможностей, которые имеются в
других командных процессорах. Однако в Коллекцию Портов включены командные
процессоры, обладающие гораздо большими возможностями, такие, как bash, scsh,
tcsh и zsh. (Вы можете сами сравнить использование памяти всеми этими
оболочками, посмотрев в колонки "VSZ" и "RSS" вывода команды ps -u).

5.3. Где найти библиотеку libc.so.3.0?

Похоже, что вы пытаетесь запустить пакадж, построенный в системе версии 2.2 и в
ыше, на системе версии 2.1.x. Пожалуйста, прочтите предыдущий раздел и найдите
подходящий для вашей системы порт или пакадж.

5.4. Выдаются сообщения Error: can't find libc.so.4.0

Вы случайно скачали пакаджи, предназначенные для систем версий 4.X и 5.X и
пытались установить их на вашей системе FreeBSD версий 2.X или 3.X. Пожалуйста,
скачайте подходящие версии пакаджей.

5.5. ghostscript выдаёт массу сообщений на моём 386/486SX.

У вас нет сопроцессора, верно? Вам нужно добавить в ядро другой эмулятор
сопроцессора; это делается добавлением следующей строки в файл конфигурации
ядра и последующей его перекомпиляцией.
    options GPL_MATH_EMULATE

    Note: Если вы поступаете таким образом, вам нужно будет убрать опцию
    MATH_EMULATE.

5.6. При запуске приложения SCO/iBCS2, оно прерывается на socksys (только во FreeBSD 3.0 и более ранних версий).

Прежде всего вам нужно отредактировать файл /etc/sysconfig (или /etc/rc.conf),
изменив в последнем разделе значение следующей переменной на YES:
    # Set to YES if you want ibcs2 (SCO) emulation loaded at startup
    ibcs2=NO

Это включит загрузку модуля поддержки ibcs2 на этапе загрузки системы.
Затем вам нужно изменить каталог /compat/ibcs2/dev так, чтобы он выглядел
следующим образом:
    lrwxr-xr-x  1 root  wheel         9 Oct 15 22:20 X0R@ -> /dev/null
    lrwxr-xr-x  1 root  wheel         7 Oct 15 22:20 nfsd@ -> socksys
    -rw-rw-r--  1 root  wheel         0 Oct 28 12:02 null
    lrwxr-xr-x  1 root  wheel         9 Oct 15 22:20 socksys@ -> /dev/null
    crw-rw-rw-  1 root  wheel   41,   1 Oct 15 22:14 spx

Работа с socksys была значительно упрощена по сравнению с более ранними в
ерсиями. Socksys должен указывать на /dev/null, чтобы обмануть open & close.
Код, имеющийся в -CURRENT, возьмёт на себя всё остальное. Если вам нужен драйв
ер spx для подключения X по локальному сокету, определите переменную SPX_HACK
при компиляции системы.

5.7. Как настроить INN (Internet News) на моей машине?

После установки пакаджа или порта для inn, для начала загляните на страничку
Дэйва Бэрра (Dave Barr), посвящённую INN, где вы найдёте соответствующий FAQ.

5.8. Какую версию Microsoft FrontPage я должен иметь?

Используй порт, дурачок! Среди портов имеется Apache с поддержкой FrontPage.

5.9. Поддерживает ли FreeBSD среду Java?

Да. Посетите страницу http://www.FreeBSD.org/java/.

5.10. Почему некоторый порт не компилируется на моей машине с 3.X-STABLE?

Если вы используете FreeBSD версии, значительно отстающей от -CURRENT или
-STABLE, вам нужен пакет обновления, который можно найти по адресу http://
www.FreeBSD.org/ports/. Если вы отслеживаете все изменения, то, скорее всего,
кто-то внёс изменения в порт, так что он работает в -CURRENT, но не работает в
-STABLE. Так как предполагается, что коллекция портов должна работать как в в
етке -CURRENT, так и в ветви -STABLE, то, пожалуйста, пошлите сообщение об этой
ошибке с помощью команды send-pr(1).

5.11. Где найти ld.so?

Если вам необходимо запустить некоторые приложения в формате aout типа Netscape
Navigator на Elf-машине, такой как 3.1-R и выше, то для этого требуется /usr/
libexec/ld.so и некоторые библиотеки в формате aout. Они включены в дистрибутив
как compat22. Запустите /stand/sysinstall или install.sh в каталоге compat22,
чтобы установить этот компонент. Прочтите также документы ERRATA от 3.1-R и
3.2-R.