检查C++ 11对“正则表达式”的支持:不支持

问题描述:

当我尝试编译ArangoDB 3.0时,出现如下问题。检查C++ 11对“正则表达式”的支持:不支持

wget https://www.arangodb.com/repositories/Source/ArangoDB-3.0.0.tar.gz 
tar -xvvf ArangoDB-3.0.0.tar.gz 
ln -s ArangoDB-3.0.0 arangodb 

    OR 

git clone https://github.com/arangodb/arangodb 
cd arangodb 
git checkout 3.0 
git pull 

我已经尝试了以上二进制编译如下。

cd arangodb/ 
mkdir -p build 
cd build 
cmake .. -DCMAKE_BUILD_TYPE=Release 

执行cmake .. -DCMAKE_BUILD_TYPE=Release命令给我下面的错误。在AWS上的Linux AMI

-- Checking C++11 support for "regex" 
CMake Error at cmake/CheckCXX11Features.cmake:129 (message): 
    Checking C++11 support for "regex": not supported 
Call Stack (most recent call first): 
    cmake/CheckCXX11Features.cmake:150 (cxx11_check_feature) 
    CMakeLists.txt:265 (include) 


-- Configuring incomplete, errors occurred! 
See also "/home/ec2-user/arangodb/build/CMakeFiles/CMakeOutput.log". 

OS版本:

的Linux 4.4.11-23.53.amzn1.x86_64#1 SMP周三6月1日二十二时22分50秒UTC 2016 x86_64的x86_64的x86_64的GNU/Linux的

GCC版本:

gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-9) 
Copyright (C) 2013 Free Software Foundation, Inc. 
This is free software; see the source for copying conditions. There is NO 
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
+3

在gcc 4.9中增加了'regex'支持。你的编译器太旧了。 –

+0

@BillLynch可以升级还是需要编译新的? –

Regex支持GCC加入4.9 - @Bill-Lynch

你有两个选择:

  • 安装一个新的编译器。
  • 检查代码并用所有等价函数替换所有正则表达式。
+0

请告诉我,我如何安装一个新的编译器?谢谢。 – akki

+0

@akki首先你需要决定你想要的编译器。 Tgen你可以做任何通常在你选择的平台/操作系统上完成的任何事情。 –