Создание пакетов из источника в целом является болью, но после того как это сделано, можно использовать его, чтобы сделать пакет и обеспечить двоичные файлы сами и избавить других от необходимости делать так для проекта.
Я только сделал подверсию сам, а не mod_perl, но я смотрел на сценарий сборки, который мы используем для mod_perl (печально, это очень характерно для нашей среды и не имело бы много применения для Вас), и похоже, что mod_perl будет самой легкой опцией, поскольку это имеет меньше зависимостей (просто жемчуг и апач).
Здание mod_perl надеется быть столь же простым как perl Makefile.PL MP_APXS=/path/to/your/apache/bin/apxs; make; make install
.
Подверсия, с другой стороны, требует, по крайней мере, апреля и apru, и в зависимости от Ваших требований, другие зависимости (например, мы создаем с привязкой Python для trac). Если Вы решаете скомпилировать подверсию, Вы, вероятно, хотите отключить как можно больше зависимостей (например, если Вам не нужна berkely поддержка дб, передача --without-berkley-db
настраивать). Если настраивают, жалуется на недостающую зависимость, решите, нуждаетесь ли Вы в ней и просто добавляете --without-featurex
если Вам не нужен он.
У Вас должен будет быть апрель, и apru создал сначала (или двоичные установленные пакеты), и передача --with-apr=/some/path
и --with-apr-util=/some/path
опции (оба - пути к apr/apu-1-config файл, расположенный в каталоге bin).
Получение работы поддержки SSL могло бы взять некоторую работу также, как solaris ssl библиотеки находятся в месте, которое обычно не обнаруживается. Удостоверьтесь, что Вы имеете -I/usr/sfw/include
в Вашей переменной среды CFLAGS и -L/usr/sfw/lib -R/usr/sfw/lib
(или/usr/sfw/lib/amd64 или sparcv9, если Вы хотите 64 бита) в Вашей переменной среды LDFLAGS. Обе переменные должны быть установлены перед выполнением настраивают. Если Вы создаете 32-разрядный, Вы смогли сходить с рук просто выполнение --with-ssl=/usr/sfw
, но маловероятно, что подверсия найдет библиотеки на 64 бита правильно при требовании версии на 64 бита без Вас устанавливающий CFLAGS/LDFLAGS правильно.
Как с созданием mod_perl, необходимо будет сообщить подверсии, где apxs, просто передайте --with-apxs=/path/to/apache/bin/apxs
настраивать.
Эта последняя подсказка, вероятно, очевидна, но на всякий случай: превратите инструкции по сборке в сценарий (или Make-файл), таким образом, можно легко повторить их на новых машинах, или с немного отличающимся настраивают опции.
Просто ответив здесь для записи, что работало на меня, следуя за очень полезным ответом Mark's.
Начиная с компиляции mod_perl был похож на меньшее количество стычки, чем компиляция Подверсии, я установил Подверсию 1.6 и ее зависимости (которые включают Apache 2.2.15) из sunfreeware.com.
Затем я загрузил и создал mod_perl согласно инструкциям.
Я действительно должен был отредактировать /usr/local/apache2/bin/apxs
потому что это предположило, что жемчуг был в /usr/local/bin
вместо /usr/bin
но после этого это скомпилировало все и поместило mod_perl.so
в правильном месте.
Другой маленький глюк с установкой модулей Perl против стандартного Perl 5.8, включенного с Солярисом, - то, что это было скомпилировано с помощью компилятора Sun, не gcc, и Вы сталкиваетесь с меньшим количеством проблем, если Вы загружаете и используете это вместо этого (удостоверьтесь, что это - каталог bin, прежде gcc на Вашем пути).
Просто используйте веб-Стопку, интегрированную компиляцию Sun этих продуктов (можно выборочно установить то, в чем Вы нуждаетесь):
Программное обеспечение Web Stack включает следующее программное обеспечение:
- Программное обеспечение сервера - веб-сервер Apache, Tomcat Apache, Прокси-сервер Сквида, lighttpd.
- Программное обеспечение DB - MySQL Server.
- Среда программирования - PHP, Perl, Ruby и Python.
- Кэширование программного обеспечения - memcached.
Завершите практическое руководство здесь: http://wikis.sun.com/display/WebStack/Web+Stack+Getting+Started+Guide