在Centos中安装polyglot库时遇到问题。 pyICU的构build失败,gcc退出代码1。
我环顾networking,并没有发现很多有用的资源。
系统上安装了以下软件包:
日志:
(venv2)xxx@server: ~/cp $ pip install -U polyglot Collecting polyglot Using cached polyglot-15.10.03-py2.py3-none-any.whl Requirement already up-to-date: futures>=2.1.6 in /home/xxx/venv2/lib/python2.7/site-packages (from polyglot) Requirement already up-to-date: morfessor>=2.0.2a1 in /home/xxx/venv2/lib/python2.7/site-packages (from polyglot) Requirement already up-to-date: pycld2>=0.3 in /home/xxx/venv2/lib/python2.7/site-packages (from polyglot) Requirement already up-to-date: six>=1.7.3 in /home/xxx/venv2/lib/python2.7/site-packages (from polyglot) Requirement already up-to-date: wheel>=0.23.0 in /home/xxx/venv2/lib/python2.7/site-packages (from polyglot) Collecting PyICU>=1.8 (from polyglot) Using cached PyICU-1.9.2.tar.gz Building wheels for collected packages: PyICU Running setup.py bdist_wheel for PyICU ... error Complete output from command /home/xxx/venv2/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-RRIysk/PyICU/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpoQlZzFpip-wheel- --python-tag cp27: running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-2.7 copying icu.py -> build/lib.linux-x86_64-2.7 copying PyICU.py -> build/lib.linux-x86_64-2.7 copying docs.py -> build/lib.linux-x86_64-2.7 running build_ext building '_icu' extension creating build/temp.linux-x86_64-2.7 gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c normalizer.cpp -o build/temp.linux-x86_64-2.7/normalizer.o -DPYICU_VER="1.9.2" cc1plus: Warnung: Kommandozeilenoption "-Wstrict-prototypes" ist gültig für Ada/C/ObjC, aber nicht für C++ /usr/include/unicode/tmutfmt.h:231: Warnung: »UBool icu_4_2::hashTableValueComparator(UHashTok, UHashTok)« als »static« deklariert, aber nirgendwo definiert gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c spoof.cpp -o build/temp.linux-x86_64-2.7/spoof.o -DPYICU_VER="1.9.2" cc1plus: Warnung: Kommandozeilenoption "-Wstrict-prototypes" ist gültig für Ada/C/ObjC, aber nicht für C++ /usr/include/unicode/tmutfmt.h:231: Warnung: »UBool icu_4_2::hashTableValueComparator(UHashTok, UHashTok)« als »static« deklariert, aber nirgendwo definiert gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c search.cpp -o build/temp.linux-x86_64-2.7/search.o -DPYICU_VER="1.9.2" cc1plus: Warnung: Kommandozeilenoption "-Wstrict-prototypes" ist gültig für Ada/C/ObjC, aber nicht für C++ /usr/include/unicode/tmutfmt.h:231: Warnung: »UBool icu_4_2::hashTableValueComparator(UHashTok, UHashTok)« als »static« deklariert, aber nirgendwo definiert gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c numberformat.cpp -o build/temp.linux-x86_64-2.7/numberformat.o -DPYICU_VER="1.9.2" cc1plus: Warnung: Kommandozeilenoption "-Wstrict-prototypes" ist gültig für Ada/C/ObjC, aber nicht für C++ numberformat.cpp: In function »PyObject* t_numberformat_isLenient(t_numberformat*)«: numberformat.cpp:912: Fehler: »class icu_4_2::NumberFormat« hat kein Element namens »isLenient« numberformat.cpp: In function »PyObject* t_numberformat_setLenient(t_numberformat*, PyObject*)«: numberformat.cpp:923: Fehler: »class icu_4_2::NumberFormat« hat kein Element namens »setLenient« /usr/include/unicode/tmutfmt.h: At global scope: /usr/include/unicode/tmutfmt.h:231: Warnung: »UBool icu_4_2::hashTableValueComparator(UHashTok, UHashTok)« als »static« deklariert, aber nirgendwo definiert error: command 'gcc' failed with exit status 1 ---------------------------------------- Failed building wheel for PyICU Running setup.py clean for PyICU Failed to build PyICU Installing collected packages: PyICU, polyglot Running setup.py install for PyICU ... error Complete output from command /home/xxx/venv2/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-RRIysk/PyICU/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-Gg7muP-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/xxx/venv2/include/site/python2.7/PyICU: running install running build running build_py creating build creating build/lib.linux-x86_64-2.7 copying icu.py -> build/lib.linux-x86_64-2.7 copying PyICU.py -> build/lib.linux-x86_64-2.7 copying docs.py -> build/lib.linux-x86_64-2.7 running build_ext building '_icu' extension creating build/temp.linux-x86_64-2.7 gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c normalizer.cpp -o build/temp.linux-x86_64-2.7/normalizer.o -DPYICU_VER="1.9.2" cc1plus: Warnung: Kommandozeilenoption "-Wstrict-prototypes" ist gültig für Ada/C/ObjC, aber nicht für C++ /usr/include/unicode/tmutfmt.h:231: Warnung: »UBool icu_4_2::hashTableValueComparator(UHashTok, UHashTok)« als »static« deklariert, aber nirgendwo definiert gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c spoof.cpp -o build/temp.linux-x86_64-2.7/spoof.o -DPYICU_VER="1.9.2" cc1plus: Warnung: Kommandozeilenoption "-Wstrict-prototypes" ist gültig für Ada/C/ObjC, aber nicht für C++ /usr/include/unicode/tmutfmt.h:231: Warnung: »UBool icu_4_2::hashTableValueComparator(UHashTok, UHashTok)« als »static« deklariert, aber nirgendwo definiert gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c search.cpp -o build/temp.linux-x86_64-2.7/search.o -DPYICU_VER="1.9.2" cc1plus: Warnung: Kommandozeilenoption "-Wstrict-prototypes" ist gültig für Ada/C/ObjC, aber nicht für C++ /usr/include/unicode/tmutfmt.h:231: Warnung: »UBool icu_4_2::hashTableValueComparator(UHashTok, UHashTok)« als »static« deklariert, aber nirgendwo definiert gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include/python2.7 -c numberformat.cpp -o build/temp.linux-x86_64-2.7/numberformat.o -DPYICU_VER="1.9.2" cc1plus: Warnung: Kommandozeilenoption "-Wstrict-prototypes" ist gültig für Ada/C/ObjC, aber nicht für C++ numberformat.cpp: In function »PyObject* t_numberformat_isLenient(t_numberformat*)«: numberformat.cpp:912: Fehler: »class icu_4_2::NumberFormat« hat kein Element namens »isLenient« numberformat.cpp: In function »PyObject* t_numberformat_setLenient(t_numberformat*, PyObject*)«: numberformat.cpp:923: Fehler: »class icu_4_2::NumberFormat« hat kein Element namens »setLenient« /usr/include/unicode/tmutfmt.h: At global scope: /usr/include/unicode/tmutfmt.h:231: Warnung: »UBool icu_4_2::hashTableValueComparator(UHashTok, UHashTok)« als »static« deklariert, aber nirgendwo definiert error: command 'gcc' failed with exit status 1 ---------------------------------------- Command "/home/xxx/venv2/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-RRIysk/PyICU/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-Gg7muP-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/xxx/venv2/include/site/python2.7/PyICU" failed with error code 1 in /tmp/pip-build-RRIysk/PyICU
我感谢任何帮助。
我刚刚遇到了同样的错误。 我建议使用yum update libicu-devel
更新到更新的ICU版本。 我更新到版本50.1.2并设置我的环境变量匹配, export ICU_VERSION=50.1.2
,并为我工作。