Ошибка установки PCRE

Я пытаюсь установить PCRE на свой сервер Ubuntu 11.10. Когда я запускаю команду make, я получаю очень длинный вывод, который всегда заканчивается этой ошибкой:

libtool: link: ( cd ".libs" && rm -f "libpcreposix.la" && ln -s "../libpcreposix.la" "libpcreposix.la" ) source='pcrecpp.cc' object='pcrecpp.lo' libtool=yes \
        DEPDIR=.deps depmode=none /bin/bash ./depcomp \
        /bin/bash ./libtool --tag=CXX   --mode=compile  -DHAVE_CONFIG_H -I.      -c -o pcrecpp.lo pcrecpp.cc libtool: compile: unrecognized option `-DHAVE_CONFIG_H' libtool: compile: Try `libtool
--help' for more information. make[1]: *** [pcrecpp.lo] Error 1 make[1]: Leaving directory `/home/root/src/pcre/pcre-8.12' make:
*** [all] Error 2

Я запустил «настроить». Любые идеи?


person Ohas    schedule 23.10.2011    source источник
comment
Какой пркре? (имя архива)   -  person William Pursell    schedule 23.10.2011


Ответы (7)


Вам нужен установленный компилятор C++, вам, скорее всего, понадобится g++.

С помощью apt-get запустите «apt-get install g++» или «apt-get install build-essential», поскольку build-essential включает g++.

person Fredrik Håård    schedule 28.11.2011
comment
Действительно, ${CXX}, кажется, расширился здесь до пустой строки. Возможно, конфигурация pcre должна была это уловить или не пытаться создавать pcrecpp. - person jørgensen; 28.01.2012
comment
Делать это у меня не совсем получалось. Это та же ошибка. Нужно ли указывать какую-то опцию configure? - person Ry-♦; 28.01.2012
comment
minitech: Вы видите, до чего расширяется $CXX? Какой вывод дает «g++ --version»? - person Fredrik Håård; 30.01.2012
comment
@minitech Я не знаю, знали ли вы, но я получил ту же ошибку даже после установки build-essential. Я удалил каталог pcre-8.31. Снова распакуйте его, выполните ./configure, а затем make сработало! - person Philip; 03.10.2012
comment
Всегда хорошо очищать неудачную сборку после установки новых пакетов; «очистить» обычно помогает. - person Fredrik Håård; 26.11.2012
comment
Я получил эту ошибку во время установки: bugzilla.redhat.com/show_bug.cgi?id= 494006. Запуск yum clean metadata устранил ошибку, и я смог установить gcc-c++. - person yellavon; 05.05.2014
comment
Если установлен gcc и он поддерживает c++, зачем еще нужно устанавливать g++? - person zequihg50; 30.03.2017

PCRE пытается построить вывод C++ без компилятора C++. Пытаться

./configure --disable-cpp 

чтобы отключить параметры C++.

person XcodeJunkie    schedule 14.02.2013
comment
Если cpp отключен с помощью --without-pgsql, каковы последствия?? - person GoinOff; 28.10.2013

Почему бы не найти PCRE с помощью apt-cache search pcre | grep pcre, а затем использовать apt-get install для установки PCRE? Я думаю, что PCRE уже включен в репозиторий.

Это результат выполнения вышеуказанной команды на моем компьютере (Ubuntu 10.04):

$ apt-cache search pcre | grep pcre
libpcre3-dbg - Perl 5 Compatible Regular Expression Library - debug symbols
libpcre3-dev - Perl 5 Compatible Regular Expression Library - development files
libpcrecpp0 - Perl 5 Compatible Regular Expression Library - C++ runtime files
libpcre3 - Perl 5 Compatible Regular Expression Library - runtime files
cl-ppcre - Portable Regular Express Library for Common Lisp
gambas2-gb-pcre - The Gambas regexp component
haskell-pcre-light-doc - library documentation for pcre-light
libghc6-pcre-light-dev - Haskell library for Perl 5-compatible regular expressions
libghc6-pcre-light-prof - pcre-light library with profiling enabled
liblua5.1-rex-pcre-dev - PCRE development files for the Lua language version 5.1
liblua5.1-rex-pcre0 - Perl regular expressions library for the Lua language version 5.1
libpcre++-dev - C++ wrapper class for pcre (development)
libpcre++0 - C++ wrapper class for pcre (runtime)
libpcre-ocaml - OCaml bindings for PCRE (runtime)
libpcre-ocaml-dev - OCaml bindings for PCRE (Perl Compatible Regular Expression)
pcregrep - grep utility that uses perl 5 compatible regexes.
pike7.6-pcre - PCRE module for Pike
sqlite3-pcre - Perl-compatible regular expression support for SQLite
postfix-pcre - PCRE map support for Postfix
person Yun Huang    schedule 29.01.2012
comment
Люди пытаются установить версию 8. TheBuggenie использует pcre версии 8, бог знает, зачем им использовать что-то, что сделает невозможным начало работы над их продуктом. Болезненная установка thebuggenie. - person Siddharth; 07.06.2012

У меня была та же проблема, и решение заключалось в том, чтобы сделать все, что было предложено в других ответах и установить файлы разработки для PCRE:

  1. apt-get install build-esential
  2. apt-get установить libtool
  3. apt-get установить libpcre3-dev
  4. apt-получить установить libpcre3
person BlackBear    schedule 27.07.2012

Когда я запускаю конфигурацию, я получаю:

libpcre проверяет наличие windows.h... нет настройки: ошибка: неверный компилятор C++ или флаги компилятора C++

Исправление заключалось в установке g++, как упоминал Фредрик. В CentOS: yum install gcc-c++

person rogerdpack    schedule 14.06.2018

Для установки пакета pcre нужно выполнить 2 команды:

  1. apt-get install libpcre3 libpcre3-dev
  2. apt-get install build-essential libpcre3-dev libxslt1-dev libgd2-xpm-dev libgeoip-dev libssl-dev
person swapnil    schedule 25.10.2016
comment
Привет! Очень короткие ответы, как правило, плохо воспринимаются здесь. Если вы сможете сделать свой ответ длиннее, вы начнете получать голоса. - person ; 26.10.2016

Я нашел ответ, почему, но не лекарство; (я знаю, что это старый вопрос, но я думал, что все равно внесу свой вклад).

Я обнаружил, что pcre уже установлен в моей системе, но, по-видимому, libtool не был. Когда я попытался выполнить sudo apt-get install libtool, я получил

Package libtool is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

Не знаю, почему это происходит, но работаю над выяснением! Надеюсь, это ответит на ваш вопрос.

person JXPheonix    schedule 08.05.2012
comment
askubuntu.com/q/391184/20972 может помочь, но предложите создать из этого совершенно новый вопрос. - person rogerdpack; 14.06.2018