Это запустилось с меня пытающийся установить Apache и mod_perl следующим это руководство.
Однако по-дурацки я установил Apache при помощи sudo apt-get install apache2
, который установил 2.4 в моей системе.
После выполнения perl Makefile.PL <options>
согласно инструкциям, я получил ту же ошибку как этот парень.
Это сказало мне, что я должен удалить 2.4 и установить 2.2 вместо этого, который является тем, что я пытался сделать путем выполнения sudo apt-get remove --purge apache2
.
Когда я работал which apache2
это ничего не возвратило так, что я предположил, что это закончилось, но когда я работал which httpd
(который дал строку), и затем httpd -V
, это дало мне:
Server version: Apache/2.4.10 (Unix)
Server built: Aug 6 2014 20:38:13
Server's Module Magic Number: 20120211:36
Server loaded: APR 1.5.1-dev, APR-UTIL 1.5.3
Compiled using: APR 1.5.1-dev, APR-UTIL 1.5.3
Architecture: 32-bit
Server MPM: event
threaded: yes (fixed thread count)
forked: yes (variable process count)
Server compiled with....
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=256
-D HTTPD_ROOT=""
-D SUEXEC_BIN="/bin/suexec"
-D DEFAULT_PIDLOG="/logs/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="/conf/mime.types"
-D SERVER_CONFIG_FILE="/conf/httpd.conf"
Таким образом, я пытался удалить httpd с sudo apt-get remove httpd
но одно из сообщений было Virtual packages like 'httpd' can't be removed
.
Теперь я действительно боюсь устанавливать/удалять что-либо еще в своей системе Ubuntu, поскольку я действительно понятия не имею, что я делаю. Как я могу полностью удалить сервер Apache/httpd/whatever 2.4 и установить только 2.2, таким образом, он позволит мне установить mod_perl?
Я пошел сюда для выполнения их шагов, но после получения той же ошибки от попытки выполнить make-файл жемчуга как, прежде чем я пытался видеть httpd -V
снова и это сказало мне, что я все еще имел 2.4.10.
Кто-то может прокрутить меня полностью удаление всего, что я, возможно, установил на свою человечность и затем правильно установку системы mod_perl/apache httpd 2.2, таким образом, я могу начать играть с ним?
Править: После удаления /usr/local/apache2
и выполнение sudo apt-get install libapache2-mod-perl2
, вот мои результаты.
$ which apache2
/usr/sbin/apache2
$ which httpd
/bin/httpd
$ apache2 -v
Server version: Apache/2.4.7 (Ubuntu)
Server built: Jul 22 2014 14:36:39
$ httpd -V
# same as previous in original text
$ perl -Mmod_perl2\ 999
mod_perl2 version 999 required--this is only version 2.000008.
BEGIN failed--compilation aborted.
Это означает, что я успешно сделал все? Все еще взволнованный по поводу httpd/apache вещи
(Вы, возможно, просто работали sudo apt-get install libapache2-mod-perl2
и быть сделанными.)
похоже, что Вы локально скомпилировали и установили httpd
двоичный файл. Если у Вас все еще есть источник, верный, куда Вы работали эти make
команда, можно пойти туда и работать sudo make uninstall
. Хотелось бы надеяться, это поддерживается, и это удалит httpd
из Вашей системы. Если это не работает, надо надеяться, файлы будут установлены в папки в /usr/local
, и можно удалить httpd
связанные файлы вручную.
Редактирование: Это кажется make
, установил httpd
в /bin/httpd
. После выполнения dpkg -S /bin/httpd
для проверки это не часть пакета, можно просто удалить тот файл. Кроме этого, вещи выглядят хорошо.