30

我正在尝试在我的 Ubuntu 11.10 服务器上安装 PCRE。当我运行“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

我确实运行了“配置”。有任何想法吗?

4

7 回答 7

25

您需要安装 C++ 编译器,您很可能需要 g++。

使用 apt-get,运行“apt-get install g++”或“apt-get install build-essential”,因为 build-essential 包含 g++。

于 2011-11-28T09:34:38.120 回答
15

PCRE 尝试在没有 c++ 编译器的情况下构建 c++ 输出。尝试

./configure --disable-cpp 

禁用 C++ 选项。

于 2013-02-14T11:10:58.390 回答
8

为什么不找到PCRE usingapt-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
于 2012-01-29T09:32:31.350 回答
8

我遇到了同样的问题,解决方案是执行其他答案中建议的所有操作安装 PCRE 的开发文件:

  1. apt-get install build-essential
  2. apt-get 安装 libtool
  3. apt-get 安装 libpcre3-dev
  4. apt-get 安装 libpcre3
于 2012-07-27T10:44:53.370 回答
6

当我运行配置时,我得到:

libpcre 检查 windows.h...没有配置:错误:无效的 C++ 编译器或 C++ 编译器标志

修复是按照 Fredrik 提到的那样安装 g++。在 CentOS 上:yum install gcc-c++

于 2018-06-14T18:48:15.837 回答
1

要安装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
于 2016-10-25T13:38:30.737 回答
0

我找到了为什么的答案,但不是治愈方法;(我知道这是一个老问题,但我想我还是会做出贡献)。

我发现我的系统上已经安装了 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

不知道为什么会发生这种情况,但正在努力找出答案!希望这能回答你的问题。

于 2012-05-08T20:19:39.177 回答