Назад | Перейти на главную страницу

Невозможно установить PHP на FreeBSD 9.3

Я попытался установить Php5 на свой сервер FreeBSD, который я только что получил, следуя руководству.

Итак, сначала я сделал

cd /usr/ports/lang/php5

затем

make config

не изменил там ни одной опции, наконец, я сделал

 make install

но это дало мне несколько ошибок.

root@ns******:/usr/ports/lang/php5 # make install
===>   php5-5.4.39 depends on file: /usr/local/bin/autoconf-2.69 - not found
===>    Verifying install for /usr/local/bin/autoconf-2.69 in /usr/ports/devel/autoconf
===>   autoconf-2.69 depends on executable: gm4 - found
===>   autoconf-2.69 depends on executable: help2man - not found
===>    Verifying install for help2man in /usr/ports/misc/help2man
===>   help2man-1.43.3_1 depends on package: p5-Locale-gettext>=0 - not found
===>    Verifying install for p5-Locale-gettext>=0 in /usr/ports/devel/p5-Locale-gettext
===>  Installing for p5-Locale-gettext-1.05_4
===>   p5-Locale-gettext-1.05_4 depends on file: /usr/local/bin/perl5.16.3 - found
===>   p5-Locale-gettext-1.05_4 depends on shared library: libintl.so - found (/usr/local/lib/libintl.so)
===>  Checking if p5-Locale-gettext already installed
===>   Registering installation for p5-Locale-gettext-1.05_4 as automatic
pkg-static: lstat(/usr/ports/devel/p5-Locale-gettext/work/stage/usr/local/lib/perl5/site_perl/mach/5.16/auto/Locale/gettext/gettext.so): No such file or directory
pkg-static: lstat(/usr/ports/devel/p5-Locale-gettext/work/stage/usr/local/lib/perl5/site_perl/mach/5.16/Locale/gettext.pm): No such file or directory
pkg-static: lstat(/usr/ports/devel/p5-Locale-gettext/work/stage/usr/local/lib/perl5/site_perl/man/man3/Locale::gettext.3.gz): No such file or directory
*** [fake-pkg] Error code 74

Stop in /usr/ports/devel/p5-Locale-gettext.
*** [build-depends] Error code 1

Stop in /usr/ports/misc/help2man.
*** [install] Error code 1

Stop in /usr/ports/misc/help2man.
*** [build-depends] Error code 1

Stop in /usr/ports/devel/autoconf.
*** [build-depends] Error code 1

Stop in /usr/ports/lang/php5.
*** [install] Error code 1

Stop in /usr/ports/lang/php5.

Итак, я загрузил autoconf-2.69 с сайта gnu, и он не смог найти libtool22. Скачал и "починил". Но тут еще одна ошибка.

Я не на своем компьютере, поэтому я не могу опубликовать здесь ошибку, но, чтобы продолжить, мне отказано в разрешении на использование autoconf, а chmod не работает (команда, которую мой друг сказал мне использовать, по крайней мере)!

Я загрузил вещи через bitvise ssh, если это поможет. Это выделенный сервер, у меня есть рут-доступ, получил на кимсуфи.

Как я могу это исправить? Спасибо.

gettext Порт был разделен на два разных порта, поэтому у вас есть устаревшее программное обеспечение, которое необходимо обновить перед установкой.

Сначала обновите дерево портов:

portsnap fetch update

Это может занять некоторое время.

Затем вам нужно установить несколько инструментов portmaster:

make -C /usr/ports/ports-mgmt/portmaster install clean

Затем вам нужно проверить, находятся ли ваши порты в согласованном состоянии:

portmaster --check-depends 
portmaster --check-port-dbdir 
portmaster -y --clean-distfiles

Затем вам нужно удалить старую gettext:

pkg delete -f gettext

Теперь вы, вероятно, захотите установить www/mod_php5 перед lang/php5 - модуль apache теперь является отдельным портом, в то время как CLI / FPM все еще находится в старом месте.

make -C /usr/ports/www/mod_php5 install clean
make -C /usr/ports/lang/php5 install clean
make -C /usr/ports/lang/php5-extensions install clean

Свежий gettext будет установлен автоматически как зависимость, как и много других свежих портов.

Хотя ваш хост немного устарел, вам необходимо обновить все порты из соображений безопасности:

portmaster -atd

Вы можете столкнуться с другими ошибками зависимости, поэтому просто удалите соответствующий порт (например, gettext было), и запустить portmaster -aRtd снова и снова, пока все проблемы не будут решены. Если какие-то странные сообщения все еще присутствуют, вы можете переустановить все порты сразу, portmaster -aftd

P.S. Вы должны устанавливать программное обеспечение ТОЛЬКО из портов / пакетов, чтобы избежать непредвиденных последствий.

Будет pkg install p5-Locale-gettext помочь тебе? (будьте осторожны, если он предлагает удаление и / или переустановку других пакетов)