Пока apachectl начинает получать открытый общий объектный файл

Я пытаюсь установить веб-сервер apache, используя файл tar. Итак, я скачал файл httpd-2.4.tar и распаковал его.

затем я пытаюсь установить

 1. ./configure --prefix=/usr/local/apache

но, кинь, эту ошибку

 configure: error: APR not found.  Please read the documentation.

 configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/

поэтому перейдите по этой ссылке и исправьте эту issue1 и issue2

Затем запустите следующую команду:

1.  $./configure \
--with-included-apr \
--with-pcre=/usr/local/pcre/bin/pcre-config \
--prefix=/usr/local/apache


2. $ make 

3. $ make install

После этого / захожу в /usr/local/apache/

Запустите службу:

 $  bin/apachectl -k start 

Бросьте ниже ошибку:

    httpd: Syntax error on line 66 of /usr/local/apache/conf/httpd.conf: Cannot load modules/mod_authn_file.so into server: /usr/local/apache/modules/mod_authn_file.so: cannot open shared object file: No such file or directory

перейдите в apache/modules/

Файлов *.so там нет, есть только файлы *.a и *.la,

Ссылка:

введите здесь описание изображения

Я следую этой ссылке для поиска файлов *.so , их там нет. Итак, я переустановил, но та же проблема только создает файлы *.la и *.a вместо файлов *.so,

Затем я пытаюсь изменить /apache/conf/httpd.conf

LoadModule authn_core_module modules/mod_authn_core.so в LoadModule authn_core_module modules/mod_authn_core.la

после изменения,

 httpd: Syntax error on line 66 of /usr/local/apache/conf/httpd.conf: Cannot load modules/mod_authn_file.la into server: /usr/local/apache/modules/mod_authn_file.la: invalid ELF header

Подскажите, как исправить эту проблему и зачем создавать файлы *.a, *.la вместо *.so.

Файлы *.so обновлены до файлов *.la?, если последний означает, почему не поддерживает?


person Rajkumar .E    schedule 07.12.2016    source источник
comment
Вы решили свою проблему? Как?   -  person yanzhang.guo    schedule 04.12.2020


Ответы (1)


Где вы распаковали исходники для httpd? Также это имя «httpd-2.4.tar» определенно не звучит как официальная загрузка.

В любом случае файлы .la и .a поставляются с исходниками, они не являются модулями, вы можете просмотреть их с помощью vim, чтобы увидеть, что они собой представляют (по крайней мере, файлы .la)

Follow these steps:

* Download from the original source: http://httpd.apache.org/download.cgi
* Untar onto ~/source-httpd/
* cd ~/source-httpd/
* rm -Rf /usr/local/apache (or whatever you had there)
* ./configure --prefix=/usr/local/apache --enable-mpms-shared=all --with-mpm=event --enable-mods-shared=all (.... and any other options)
* Review the ouput for missing libs and functionality you may need, install necessary lips and run "configure" again with the same parameters or adjusted to your needs
* make && make install
* ls -l /usr/local/apache/modules to check the .so files are really there.
* Configure and run httpd accordingly
person ezra-s    schedule 12.12.2016
comment
я запускаю ./configure --prefix=/usr/local/apache CC=aarch64-linux-gnu-gcc --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr -util --with-ssl=/usr/local/openssl --sysconfdir=/etc/apache -with-apr-iconv=/usr/local/apr-iconv --enable-mpms-shared=all --with- mpm=event --enable-mods-shared=all , утилиты нет *.so.почему? - person yanzhang.guo; 04.12.2020