Linux环境下使用Miniconda安装了python3.7环境,再安装superset报错

Collecting python-geohash
  Downloading python-geohash-0.8.5.tar.gz (17 kB)
Building wheels for collected packages: python-geohash
  Building wheel for python-geohash (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: /opt/module/Miniconda3/envs/superset/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hj5nntcm/python-geohash_170166fc8d9e41a494402147abc24462/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hj5nntcm/python-geohash_170166fc8d9e41a494402147abc24462/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-3w7wiynu
       cwd: /tmp/pip-install-hj5nntcm/python-geohash_170166fc8d9e41a494402147abc24462/
  Complete output (56 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.7
  copying geohash.py -> build/lib.linux-x86_64-3.7
  copying quadtree.py -> build/lib.linux-x86_64-3.7
  copying jpgrid.py -> build/lib.linux-x86_64-3.7
  copying jpiarea.py -> build/lib.linux-x86_64-3.7
  running build_ext
  building '_geohash' extension
  creating build/temp.linux-x86_64-3.7
  creating build/temp.linux-x86_64-3.7/src
  gcc -pthread -B /opt/module/Miniconda3/envs/superset/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DPYTHON_MODULE=1 -I/opt/module/Miniconda3/envs/superset/include/python3.7m -c src/geohash.cpp -o build/temp.linux-x86_64-3.7/src/geohash.o
  cc1plus: 警告:command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++ [默认启用]
  In file included from src/geohash.cpp:538:0:
  /opt/module/Miniconda3/envs/superset/include/python3.7m/Python.h:27:5: 错误:#error "Python.h requires that stdio.h define NULL."
   #   error "Python.h requires that stdio.h define NULL."
       ^
  In file included from /opt/module/Miniconda3/envs/superset/include/python3.7m/pystate.h:11:0,
                   from /opt/module/Miniconda3/envs/superset/include/python3.7m/traceback.h:8,
                   from /opt/module/Miniconda3/envs/superset/include/python3.7m/Python.h:100,
                   from src/geohash.cpp:538:
  /opt/module/Miniconda3/envs/superset/include/python3.7m/pythread.h:122:5: 错误:#error "Require native threads. See https://bugs.python.org/issue31370"
   #   error "Require native threads. See https://bugs.python.org/issue31370"
       ^
  In file included from src/geohash.cpp:19:0:
  src/geohash.h:14:64: 错误:‘size_t’未声明
   int geohash_encode(double latitude, double longitude, char* r, size_t capacity);
                                                                  ^
  src/geohash.h:15:29: 错误:‘size_t’未声明
   int geohash_decode(char* r, size_t length, double *latitude, double *longitude);
                               ^
  src/geohash.h:16:46: 错误:‘size_t’未声明
   int geo_neighbors(char *hashcode, char* dst, size_t dst_length, int *string_count);
                                                ^
  src/geohash.cpp:21:15: 错误:‘uint16_t’不是一个类型名
   static inline uint16_t interleave(uint8_t upper, uint8_t lower){
                 ^
  src/geohash.cpp:70:33: 错误:变量或字段‘deinterleave’声明为 void
   static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                   ^
  src/geohash.cpp:70:33: 错误:‘uint16_t’在此作用域中尚未声明
  src/geohash.cpp:70:55: 错误:‘uint8_t’在此作用域中尚未声明
   static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                                         ^
  src/geohash.cpp:70:64: 错误:‘upper’在此作用域中尚未声明
   static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                                                  ^
  src/geohash.cpp:70:71: 错误:‘uint8_t’在此作用域中尚未声明
   static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                                                         ^
  src/geohash.cpp:70:80: 错误:‘lower’在此作用域中尚未声明
   static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                                                                  ^
  error: command 'gcc' failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for python-geohash
  Running setup.py clean for python-geohash
Failed to build python-geohash
Installing collected packages: python-geohash
    Running setup.py install for python-geohash ... error
    ERROR: Command errored out with exit status 1:
     command: /opt/module/Miniconda3/envs/superset/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hj5nntcm/python-geohash_170166fc8d9e41a494402147abc24462/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hj5nntcm/python-geohash_170166fc8d9e41a494402147abc24462/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-0nlyc0tl/install-record.txt --single-version-externally-managed --compile --install-headers /opt/module/Miniconda3/envs/superset/include/python3.7m/python-geohash
         cwd: /tmp/pip-install-hj5nntcm/python-geohash_170166fc8d9e41a494402147abc24462/
    Complete output (56 lines):
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-3.7
    copying geohash.py -> build/lib.linux-x86_64-3.7
    copying quadtree.py -> build/lib.linux-x86_64-3.7
    copying jpgrid.py -> build/lib.linux-x86_64-3.7
    copying jpiarea.py -> build/lib.linux-x86_64-3.7
    running build_ext
    building '_geohash' extension
    creating build/temp.linux-x86_64-3.7
    creating build/temp.linux-x86_64-3.7/src
    gcc -pthread -B /opt/module/Miniconda3/envs/superset/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -DPYTHON_MODULE=1 -I/opt/module/Miniconda3/envs/superset/include/python3.7m -c src/geohash.cpp -o build/temp.linux-x86_64-3.7/src/geohash.o
    cc1plus: 警告:command line option ‘-Wstrict-prototypes’ is valid for C/ObjC but not for C++ [默认启用]
    In file included from src/geohash.cpp:538:0:
    /opt/module/Miniconda3/envs/superset/include/python3.7m/Python.h:27:5: 错误:#error "Python.h requires that stdio.h define NULL."
     #   error "Python.h requires that stdio.h define NULL."
         ^
    In file included from /opt/module/Miniconda3/envs/superset/include/python3.7m/pystate.h:11:0,
                     from /opt/module/Miniconda3/envs/superset/include/python3.7m/traceback.h:8,
                     from /opt/module/Miniconda3/envs/superset/include/python3.7m/Python.h:100,
                     from src/geohash.cpp:538:
    /opt/module/Miniconda3/envs/superset/include/python3.7m/pythread.h:122:5: 错误:#error "Require native threads. See https://bugs.python.org/issue31370"
     #   error "Require native threads. See https://bugs.python.org/issue31370"
         ^
    In file included from src/geohash.cpp:19:0:
    src/geohash.h:14:64: 错误:‘size_t’未声明
     int geohash_encode(double latitude, double longitude, char* r, size_t capacity);
                                                                    ^
    src/geohash.h:15:29: 错误:‘size_t’未声明
     int geohash_decode(char* r, size_t length, double *latitude, double *longitude);
                                 ^
    src/geohash.h:16:46: 错误:‘size_t’未声明
     int geo_neighbors(char *hashcode, char* dst, size_t dst_length, int *string_count);
                                                  ^
    src/geohash.cpp:21:15: 错误:‘uint16_t’不是一个类型名
     static inline uint16_t interleave(uint8_t upper, uint8_t lower){
                   ^
    src/geohash.cpp:70:33: 错误:变量或字段‘deinterleave’声明为 void
     static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                     ^
    src/geohash.cpp:70:33: 错误:‘uint16_t’在此作用域中尚未声明
    src/geohash.cpp:70:55: 错误:‘uint8_t’在此作用域中尚未声明
     static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                                           ^
    src/geohash.cpp:70:64: 错误:‘upper’在此作用域中尚未声明
     static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                                                    ^
    src/geohash.cpp:70:71: 错误:‘uint8_t’在此作用域中尚未声明
     static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                                                           ^
    src/geohash.cpp:70:80: 错误:‘lower’在此作用域中尚未声明
     static inline void deinterleave(uint16_t interleaved, uint8_t *upper, uint8_t *lower){
                                                                                    ^
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /opt/module/Miniconda3/envs/superset/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hj5nntcm/python-geohash_170166fc8d9e41a494402147abc24462/setup.py'"'"'; __file__='"'"'/tmp/pip-install-hj5nntcm/python-geohash_170166fc8d9e41a494402147abc24462/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-0nlyc0tl/install-record.txt --single-version-externally-managed --compile --install-headers /opt/module/Miniconda3/envs/superset/include/python3.7m/python-geohash Check the logs for full command output.

 

解决了没