首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >pip安装re2给出一个错误

pip安装re2给出一个错误
EN

Stack Overflow用户
提问于 2016-05-01 17:47:21
回答 4查看 9.9K关注 0票数 5

我试图通过命令re2下载pip install re2,它给了我以下内容:

代码语言:javascript
运行
复制
Collecting re2
  Using cached re2-0.2.22.tar.gz
Building wheels for collected packages: re2
  Running setup.py bdist_wheel for re2 ... error
  Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-_tul1J/re2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpEx8yE1pip-wheel- --python-tag cp27:
  running bdist_wheel
  running build
  running build_ext
  building 're2' extension
  creating build
  creating build/temp.linux-x86_64-2.7
  creating build/temp.linux-x86_64-2.7/src
  x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c src/re2.cpp -o build/temp.linux-x86_64-2.7/src/re2.o
  cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
  src/re2.cpp:201:29: fatal error: re2/stringpiece.h: No such file or directory
   #include "re2/stringpiece.h"
                               ^
  compilation terminated.
  error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

  ----------------------------------------
  Failed building wheel for re2
  Running setup.py clean for re2
Failed to build re2
Installing collected packages: re2
  Running setup.py install for re2 ... error
    Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-_tul1J/re2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-qsPvRS-record/install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_ext
    building 're2' extension
    creating build
    creating build/temp.linux-x86_64-2.7
    creating build/temp.linux-x86_64-2.7/src
    x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c src/re2.cpp -o build/temp.linux-x86_64-2.7/src/re2.o
    cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
    src/re2.cpp:201:29: fatal error: re2/stringpiece.h: No such file or directory
     #include "re2/stringpiece.h"
                                 ^
    compilation terminated.
    error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    ----------------------------------------
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-_tul1J/re2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-qsPvRS-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-_tul1J/re2/

为什么不起作用?还是应该以其他方式下载re2?

注意:我发现re2必须已经安装了google的re2 c++,如果存在这个问题,你能告诉我如何简单地安装google的re2 c++和re2吗?我被他们写的关于如何安装的文章搞糊涂了。

在尝试了MattDMo的解决方案之后,我得到了以下信息:

代码语言:javascript
运行
复制
Collecting re2
  Using cached re2-0.2.22.tar.gz
Building wheels for collected packages: re2
  Running setup.py bdist_wheel for re2 ... error
  Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-azytbM/re2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpxFXFdmpip-wheel- --python-tag cp27:
  running bdist_wheel
  running build
  running build_ext
  building 're2' extension
  creating build
  creating build/temp.linux-x86_64-2.7
  creating build/temp.linux-x86_64-2.7/src
  x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/local/include -I/usr/include/python2.7 -c src/re2.cpp -o build/temp.linux-x86_64-2.7/src/re2.o
  cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
  In file included from /usr/include/c++/4.9/mutex:35:0,
                   from /usr/local/include/re2/re2.h:184,
                   from src/re2.cpp:202:
  /usr/include/c++/4.9/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
   #error This file requires compiler and library support for the \
    ^
  In file included from src/re2.cpp:202:0:
  /usr/local/include/re2/re2.h:734:16: error: ‘once_flag’ in namespace ‘std’ does not name a type
     mutable std::once_flag rprog_once_;
                  ^
  /usr/local/include/re2/re2.h:735:16: error: ‘once_flag’ in namespace ‘std’ does not name a type
     mutable std::once_flag num_captures_once_;
                  ^
  /usr/local/include/re2/re2.h:736:16: error: ‘once_flag’ in namespace ‘std’ does not name a type
     mutable std::once_flag named_groups_once_;
                  ^
  /usr/local/include/re2/re2.h:737:16: error: ‘once_flag’ in namespace ‘std’ does not name a type
     mutable std::once_flag group_names_once_;
                  ^
  error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

  ----------------------------------------
  Failed building wheel for re2
  Running setup.py clean for re2
Failed to build re2
Installing collected packages: re2
  Running setup.py install for re2 ... error
    Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-azytbM/re2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-hKOqNV-record/install-record.txt --single-version-externally-managed --compile:
    running install
    running build
    running build_ext
    building 're2' extension
    creating build
    creating build/temp.linux-x86_64-2.7
    creating build/temp.linux-x86_64-2.7/src
    x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/local/include -I/usr/include/python2.7 -c src/re2.cpp -o build/temp.linux-x86_64-2.7/src/re2.o
    cc1plus: warning: command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++
    In file included from /usr/include/c++/4.9/mutex:35:0,
                     from /usr/local/include/re2/re2.h:184,
                     from src/re2.cpp:202:
    /usr/include/c++/4.9/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
     #error This file requires compiler and library support for the \
      ^
    In file included from src/re2.cpp:202:0:
    /usr/local/include/re2/re2.h:734:16: error: ‘once_flag’ in namespace ‘std’ does not name a type
       mutable std::once_flag rprog_once_;
                    ^
    /usr/local/include/re2/re2.h:735:16: error: ‘once_flag’ in namespace ‘std’ does not name a type
       mutable std::once_flag num_captures_once_;
                    ^
    /usr/local/include/re2/re2.h:736:16: error: ‘once_flag’ in namespace ‘std’ does not name a type
       mutable std::once_flag named_groups_once_;
                    ^
    /usr/local/include/re2/re2.h:737:16: error: ‘once_flag’ in namespace ‘std’ does not name a type
       mutable std::once_flag group_names_once_;
                    ^
    error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    ----------------------------------------
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-azytbM/re2/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-hKOqNV-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-azytbM/re2/
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-05-01 18:03:44

您所需要做的就是克隆libre2 Github和pyre2 Github (因为pip可用的PyPI版本在代码中有错误),首先构建和安装libre2,然后构建和安装pyre2

  1. 启动您最喜欢的终端应用程序。
  2. 使src目录在$HOME中存储源代码: mkdir ~/src
  3. 输入src dir: cd ~/src
  4. 克隆回购(假设您已经安装了git ): git克隆https://github.com/google/re2.git
  5. 输入re2 dir: cd re2
  6. 使: 制作
  7. 假设没有错误,请安装: sudo make安装
  8. 克隆pyre2 github回购 git克隆https://github.com/axiak/pyre2.git ~/src/pyre2 2
  9. 切换到repo的目录: cd ~/src/pyre2
  10. 内部版本: python setup.py构建
  11. 安装: sudo setup.py安装
票数 6
EN

Stack Overflow用户

发布于 2019-01-19 18:49:31

如果您在ubuntu上,则需要在调用之前使用sudo apt-get install libre2-dev

代码语言:javascript
运行
复制
pip install re2
票数 8
EN

Stack Overflow用户

发布于 2020-07-11 13:28:16

我也面临着一个类似的问题。对我来说,问题是bash_profile文件没有正确配置。

要解决这个问题:

安装jdk

在任何文本编辑器中打开~/.bash_profile或使用vim ~/.bash_profile命令

并增加:

export JAVA_HOME=$(/usr/libexec/java_home)

打开终端并运行源命令以应用更改:

source ~/.bash_profile

在此之后,使用re2安装pip

pip install re2

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36969878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档