Итак.
Вторая версия firebird'а в коллекции портов находится в каталоге /usr/ports/databases/firebird20-server. Попытавшись его собрать, натыкаемся на первые грабли. Как оказалось, компилировать firebird под рутом нельзя. Есть три пути обмана этой штуки:
1) При компиляции указать ключ:
Код: Выделить всё
# make WITHOUT_IPC_CLEANUP=yes install
Код: Выделить всё
${ECHO_MSG} "==> Please do not build ${PORTNAME} as 'root' because this may cause conflicts with SysV semaphores of running services."; exit 1; fi
3) Делать по-правильному, то есть не из-под рута. Для этого рутом надо сделать make, чтобы скачать исходники и компилятор создал нужные ему каталоги. Затем дождаться, когда скрипт вылетит и сделать каталог work доступным на запись всем или сделать юзера, под которым будете собирать, его владельцем. потом уже рутом make install. Примерно так:
Код: Выделить всё
# cd /usr/ports/databases/firebird20-server
# make
....
# chmod 0777 /usr/ports/databases/firebird20-server/work
# su username
$ make
....
$ exit
# make install
....
# make clean
Добавляем в /etc/inetd.conf:
Код: Выделить всё
gds_db stream tcp nowait firebird /usr/local/bin/fb_inet_server fb_inet_server
Код: Выделить всё
gds_db 3050/tcp #Firebird control
Код: Выделить всё
echo firebird_enable="YES" >> /etc/rc.conf
Или, если не запущен, стартуем:
Код: Выделить всё
echo inetd_enable="YES" >> /etc/rc.conf
/etc/rc.d/inetd start