1

I ran the following command (because I have both python2 and python3 on my mac):

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

The error information is as below:

Installing collected packages: pyicu Running setup.py install for pyicu ... error Complete output from command /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-externally-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

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

Command "/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-externally-managed --compile" failed with error code 1 in /private/tmp/pip-build-l71tm0m4/pyicu/

2
  • 3
    You probably need to add -stdc=c++11 to your CFLAGS. Be aware that sudo discards most environment variables by default so you may need to do sudo su and then run CFLAGS=... python... from the root shell. Commented Feb 5, 2018 at 19:48
  • 2
    @n.m. Thank you! It works. but it's -std=c++11. Commented Feb 6, 2018 at 1:18

1 Answer 1

0

According to @n.m., -std=c++11 needs to be added to CFLAGS.

Sign up to request clarification or add additional context in comments.

1 Comment

For me adding it to CFLAGS caused compilation errors on unrelated packages (error: invalid argument '-std=c++11' not allowed with 'C'), but adding it to CCFLAGS instead fixed it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.