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

Создание файла .so для Apache

Я использую CentOS 5.

Я пытаюсь использовать Mod_Security, для которого требуется liblua. Мне не удалось найти lua в репозиториях по умолчанию. Я предпочитаю не использовать сторонние репозитории. Имея это в виду, я скачал исходный код lua с официального сайта. После компиляции единственный даже близкий файл - liblua.a. Мне нужен файл liblua-5.1 (.4) .so для Apache.

Как мне создать файл .so для liblua?

Возьмите достаточно похожий SRPM и перестройте его, желательно с помощью mock.

РЕДАКТИРОВАТЬ:

О, круто, сейчас ты сделал это. Посмотри, что произойдет, когда мне скучно?

Для дальнейшего чтения этого, чтобы сделать это из источника, вы сделаете следующее:

Download Lua source from site.
yum install curses-devel readline-devel
make linux (you may need to get a few other devel libraries if the above fails)
cd /usr/local/lib
gcc -shared -o liblua.5.1.3.so /usr/local/lib/liblua.a
mv liblua.5.1.3.so liblua.5.1.3.so /usr/lib/

Note to load this, and libxml2 into mod_security you need to use LoadFile not LoadModule.
LoadFile /usr/lib/libxml2.so
LoadFile /usr/lib/liblua.5.1.3.so

Желание скомпилировать из исходного кода, а не задействовать сторонний репозиторий - это антипаттерн.