“未知类型名称'decltype'”:在mac上安装pyicu失败,gcc错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了“未知类型名称'decltype'”:在mac上安装pyicu失败,gcc错误相关的知识,希望对你有一定的参考价值。

我运行了以下命令(因为我的mac上有python2和python3):

$ CFLAGS = -I / usr / local / opt / icu4c / include LDFLAGS = -L / usr / local / opt / icu4c / lib sudo python3 -m pip install pyicu

错误信息如下:

安装收集的软件包:pyicu运行setup.py install for pyicu ... error从命令/ anaconda3 / bin / python3 -u -c完成输出“import setuptools,tokenize; file ='/ private / tmp / pip-build-l71tm0m4 / pyicu / setup.py'; f = getattr(tokenize,'open',open)(file); code = f.read()。replace('\ r \ n','\ n'); f.close( ); exec(compile(code,file,'exec'))“install --record /tmp/pip-7298jccr-record/install-record.txt --single-version-external-managed --compile:

Building PyICU 2.0.3 for ICU 58.2

Adding CXXFLAGS="-I/anaconda3/include" from /anaconda3/bin/icu-config
Adding LDFLAGS="-Wl,-rpath,/anaconda3/lib -L/anaconda3/lib -licui18n -licuuc -licudata" from /anaconda3/bin/icu-config
running install
running build
running build_py
creating build
creating build/lib.macosx-10.7-x86_64-3.6
copying PyICU.py -> build/lib.macosx-10.7-x86_64-3.6
creating build/lib.macosx-10.7-x86_64-3.6/icu
copying icu/__init__.py -> build/lib.macosx-10.7-x86_64-3.6/icu
running build_ext
building '_icu' extension
creating build/temp.macosx-10.7-x86_64-3.6
gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/anaconda3/include -arch x86_64 -I/anaconda3/include -arch x86_64 -I/anaconda3/include/python3.6m -c _icu.cpp -o build/temp.macosx-10.7-x86_64-3.6/_icu.o -DPYICU_VER="2.0.3" -I/anaconda3/include
In file included from _icu.cpp:27:
./common.h:38:13: error: unknown type name 'decltype'
    typedef decltype(nullptr) nullptr_t;
            ^
./common.h:38:30: error: expected ';' after top level declarator
    typedef decltype(nullptr) nullptr_t;
                             ^
                             ;
2 errors generated.
error: command 'gcc' failed with exit status 1

----------------------------------------

命令“/ anaconda3 / bin / python3 -u -c”import setuptools,tokenize; file ='/ private / tmp / pip-build-l71tm0m4 / pyicu / setup.py'; f = getattr(tokenize,'open',open )(file); code = f.read()。replace('\ r \ n','\ n'); f.close(); exec(compile(code,file,'exec'))“install - -record /tmp/pip-7298jccr-record/install-record.txt --single-version-external-managed --compile“失败,错误代码1在/ private / tmp / pip-build-l71tm0m4 / pyicu /

答案

据@ n.m.,-std=c++11需要加入CFLAGS。

以上是关于“未知类型名称'decltype'”:在mac上安装pyicu失败,gcc错误的主要内容,如果未能解决你的问题,请参考以下文章